Algorithmic Trading Model for Cramer COVID-19 Index Using Python

Task 1. Prepare Environment

In [1]:
import os
import sys
import numpy as np
import pandas as pd
import requests
import json
import matplotlib.pyplot as plt
from datetime import datetime, timedelta
from time import sleep
In [2]:
# Begin the timer for the script processing
startTimeScript = datetime.now()

# Set up the verbose flag to print detailed messages for debugging (setting True will activate!)
verbose = False

# Set up the sendNotification flag to send progress emails (setting True will send emails!)
notifyStatus = False

# Set up the parent directory location for loading the dotenv files
useColab = False
if useColab:
    # Mount Google Drive locally for storing files
    from dotenv import load_dotenv
    from google.colab import drive
    drive.mount('/content/gdrive')
    gdrivePrefix = '/content/gdrive/My Drive/Colab_Downloads/'
    env_path = '/content/gdrive/My Drive/Colab Notebooks/'
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Set up the dotenv file for retrieving environment variables
LocalPC = False
if LocalPC:
    from dotenv import load_dotenv
    env_path = "/Users/david/PycharmProjects/"
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Configure the plotting style
plt.style.use('seaborn')

# Set Pandas options
pd.set_option("display.max_rows", None)
pd.set_option("display.max_columns", None)
pd.set_option("display.width", 140)
In [3]:
# Check and see whether the API key is available
alphavantage_key = os.environ.get('ALPHAVANTAGE_API')
if alphavantage_key is None: sys.exit("API key for Alpha Vantage not available. Script Processing Aborted!!!")

# Check and see whether the API key is available
iexcloud_key = os.environ.get('IEXCLOUD_API')
if iexcloud_key is None: sys.exit("API key for IEX Cloud not available. Script Processing Aborted!!!")

# Check and see whether the API key is available
quandl_key = os.environ.get('QUANDL_API')
if quandl_key is None: sys.exit("API key for Quandl not available. Script Processing Aborted!!!")
In [4]:
# Specify the parameters for the trading strategy
fast_ma = 20
slow_ma = 50

model_start_date = datetime(2019, 1, 1)
print("Starting date for the model:", model_start_date)
stock_start_date = model_start_date - timedelta(days=int(slow_ma*1.5)) # Need more pricing data to calculate moving averages

# model_end_date = datetime(2020, 1, 1)
model_end_date = datetime.now()
print("Ending date for the model:", model_end_date)

stock_data_dates = pd.date_range(start=stock_start_date, end=model_end_date)
Starting date for the model: 2019-01-01 00:00:00
Ending date for the model: 2020-07-01 23:10:37.290055

Task 2. Acquire and Pre-Process Data

In [5]:
dataset_path = 'https://www.dainesanalytics.com/datasets/cramer-covid19-index/Cramer_COVID-19_Index.csv'
stock_meta = pd.read_csv(dataset_path, sep=',')
stock_meta.set_index('Symbol', inplace=True)
stock_meta = stock_meta.sort_index(ascending = True)
stock_meta.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
Index: 100 entries, AAPL to ZTS
Data columns (total 1 columns):
 #   Column  Non-Null Count  Dtype 
---  ------  --------------  ----- 
 0   Name    100 non-null    object
dtypes: object(1)
memory usage: 1.6+ KB
In [6]:
# Take a peek at the dataframe after import
stock_meta.head()
Out[6]:
Name
Symbol
AAPL Apple
ABBV AbbVie
ABT Abbott Labs
ADBE Adobe
AKAM Akamai Technologies
In [7]:
stock_list = stock_meta.index.tolist()
if verbose: print('Stocks to process:', stock_list)
In [8]:
for ticker in stock_list:
    iexcloud_url = "https://cloud.iexapis.com/stable/stock/%s/stats/sharesOutstanding?token=%s" % (ticker, iexcloud_key)
    sleep(1)
    response = requests.get(iexcloud_url)
    share_data = json.loads(response.text)
    stock_meta.loc[ticker,'Share_Outstanding'] = share_data
    print('Company outstanding share number retrieved for', ticker, ':', share_data)
Company outstanding share number retrieved for AAPL : 4334340000
Company outstanding share number retrieved for ABBV : 1762340000
Company outstanding share number retrieved for ABT : 1768850000
Company outstanding share number retrieved for ADBE : 479665000
Company outstanding share number retrieved for AKAM : 162274000
Company outstanding share number retrieved for AMD : 1171190000
Company outstanding share number retrieved for AMT : 443306000
Company outstanding share number retrieved for AMZN : 498776000
Company outstanding share number retrieved for ATVI : 770486000
Company outstanding share number retrieved for BNTX : 228604644
Company outstanding share number retrieved for BSX : 1428730000
Company outstanding share number retrieved for BYND : 62236700
Company outstanding share number retrieved for CAG : 487076000
Company outstanding share number retrieved for CCI : 416751000
Company outstanding share number retrieved for CHGG : 123646000
Company outstanding share number retrieved for CHWY : 84224900
Company outstanding share number retrieved for CL : 856528000
Company outstanding share number retrieved for CLX : 125100000
Company outstanding share number retrieved for CMG : 27890700
Company outstanding share number retrieved for CNC : 579129000
Company outstanding share number retrieved for COR : 37903400
Company outstanding share number retrieved for COST : 441524000
Company outstanding share number retrieved for COUP : 67073900
Company outstanding share number retrieved for CPB : 302164000
Company outstanding share number retrieved for CRM : 899412000
Company outstanding share number retrieved for CRWD : 151213000
Company outstanding share number retrieved for CTXS : 123451000
Company outstanding share number retrieved for D : 839251000
Company outstanding share number retrieved for DDOG : 176048000
Company outstanding share number retrieved for DG : 251722000
Company outstanding share number retrieved for DHR : 697511000
Company outstanding share number retrieved for DOCU : 183509000
Company outstanding share number retrieved for DPZ : 39117900
Company outstanding share number retrieved for DXCM : 92300000
Company outstanding share number retrieved for EA : 288714000
Company outstanding share number retrieved for EBAY : 702679000
Company outstanding share number retrieved for EBS : 52427800
Company outstanding share number retrieved for EQIX : 88514500
Company outstanding share number retrieved for ETSY : 118678000
Company outstanding share number retrieved for EVBG : 34358100
Company outstanding share number retrieved for FSLY : 78700000
Company outstanding share number retrieved for GILD : 1254370000
Company outstanding share number retrieved for GIS : 606139000
Company outstanding share number retrieved for GOLD : 1778040000
Company outstanding share number retrieved for GOOG : 336162000
Company outstanding share number retrieved for HD : 1075520000
Company outstanding share number retrieved for HRL : 538952000
Company outstanding share number retrieved for JNJ : 2634590000
Company outstanding share number retrieved for KR : 777926000
Company outstanding share number retrieved for LLY : 957038000
Company outstanding share number retrieved for LOGI : 166897353
Company outstanding share number retrieved for LVGO : 97817000
Company outstanding share number retrieved for MASI : 54115400
Company outstanding share number retrieved for MDLZ : 1427460000
Company outstanding share number retrieved for MKC : 123945000
Company outstanding share number retrieved for MKTX : 37910200
Company outstanding share number retrieved for MRNA : 388824000
Company outstanding share number retrieved for MRVL : 665300000
Company outstanding share number retrieved for MSFT : 7583440000
Company outstanding share number retrieved for NEM : 802585000
Company outstanding share number retrieved for NET : 165000000
Company outstanding share number retrieved for NFLX : 439804000
Company outstanding share number retrieved for NVDA : 615000000
Company outstanding share number retrieved for OKTA : 116135000
Company outstanding share number retrieved for PANW : 96465900
Company outstanding share number retrieved for PEP : 1387500000
Company outstanding share number retrieved for PFE : 5554830000
Company outstanding share number retrieved for PG : 2475640000
Company outstanding share number retrieved for PLD : 738582000
Company outstanding share number retrieved for PRGO : 136300000
Company outstanding share number retrieved for PTON : 206067000
Company outstanding share number retrieved for PYPL : 1174160000
Company outstanding share number retrieved for REGN : 110673000
Company outstanding share number retrieved for RMD : 144668000
Company outstanding share number retrieved for RNG : 77005900
Company outstanding share number retrieved for SHOP : 105356000
Company outstanding share number retrieved for SJM : 114043000
Company outstanding share number retrieved for SNY : 2508821038
Company outstanding share number retrieved for SPGI : 240900000
Company outstanding share number retrieved for SPLK : 158869000
Company outstanding share number retrieved for SPOT : 184416932
Company outstanding share number retrieved for SQ : 362988000
Company outstanding share number retrieved for TDOC : 74453300
Company outstanding share number retrieved for TGT : 500015000
Company outstanding share number retrieved for TMO : 394951000
Company outstanding share number retrieved for TTD : 40888700
Company outstanding share number retrieved for TTWO : 113943000
Company outstanding share number retrieved for TW : 83945500
Company outstanding share number retrieved for TWLO : 128731000
Company outstanding share number retrieved for UNH : 948380000
Company outstanding share number retrieved for VEEV : 134988000
Company outstanding share number retrieved for VMW : 111828000
Company outstanding share number retrieved for VZ : 4138000000
Company outstanding share number retrieved for WING : 29583000
Company outstanding share number retrieved for WIX : 51526000
Company outstanding share number retrieved for WMT : 2831950000
Company outstanding share number retrieved for WORK : 432599000
Company outstanding share number retrieved for ZM : 182106000
Company outstanding share number retrieved for ZS : 130518000
Company outstanding share number retrieved for ZTS : 474941000
In [9]:
stock_meta.head()
Out[9]:
Name Share_Outstanding
Symbol
AAPL Apple 4.334340e+09
ABBV AbbVie 1.762340e+09
ABT Abbott Labs 1.768850e+09
ADBE Adobe 4.796650e+08
AKAM Akamai Technologies 1.622740e+08
In [10]:
stock_meta.tail()
Out[10]:
Name Share_Outstanding
Symbol
WMT Walmart 2.831950e+09
WORK Slack 4.325990e+08
ZM Zoom Video 1.821060e+08
ZS Zscaler 1.305180e+08
ZTS Zoetis 4.749410e+08
In [11]:
total_shares = stock_meta['Share_Outstanding'].sum()
print('Total number of outstanding shares used to calculate the index:', total_shares)
Total number of outstanding shares used to calculate the index: 70701017767.0
In [12]:
# Create the dataframe to hold the index and individual stock components
columns = ['JC_MAD']
index_df = pd.DataFrame(index=stock_data_dates, columns=columns)
index_df = index_df.fillna(0.0)
index_df.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 623 entries, 2018-10-18 to 2020-07-01
Freq: D
Data columns (total 1 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   JC_MAD  623 non-null    float64
dtypes: float64(1)
memory usage: 9.7 KB
In [13]:
index_df.head()
Out[13]:
JC_MAD
2018-10-18 0.0
2018-10-19 0.0
2018-10-20 0.0
2018-10-21 0.0
2018-10-22 0.0
In [14]:
# Create the dataframe to hold the stock opening prices
stock_open_df = pd.DataFrame(index=stock_data_dates)
stock_open_df.info()
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 623 entries, 2018-10-18 to 2020-07-01
Freq: D
Empty DataFrame
In [15]:
# Create the dataframe to hold the stock closing prices
stock_close_df = pd.DataFrame(index=stock_data_dates)
stock_close_df.info()
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 623 entries, 2018-10-18 to 2020-07-01
Freq: D
Empty DataFrame
In [16]:
start_date_string = stock_start_date.strftime('%Y-%m-%d')
end_date_string = model_end_date.strftime('%Y-%m-%d')

for ticker in stock_list:
    quandl_url = "https://www.quandl.com/api/v3/datatables/SHARADAR/SEP.json?date.gte=%s&date.lte=%s&ticker=%s&api_key=%s" % (start_date_string, end_date_string, ticker, quandl_key)
    response = requests.get(quandl_url)
    sleep(1)
    quandl_dict = json.loads(response.text)
    stock_data = pd.DataFrame(quandl_dict['datatable']['data'])
    print(len(stock_data), 'data points retrieved from the API call for:', ticker)
    stock_data.columns = ['ticker', 'date', 'open', 'high', 'low', 'close', 'volume', 'dividend', 'closeunadj', 'lastupdated']
    stock_data.index = pd.to_datetime(stock_data.date)
    stock_data = stock_data.sort_index(ascending = True)
    stock_open = stock_data.loc[:, ['open']]
    stock_open.rename(columns={'open': ticker}, inplace=True)
    stock_open_df = pd.concat([stock_open_df, stock_open], axis=1)
    stock_close = stock_data.loc[:, ['closeunadj']]
    stock_close.rename(columns={'closeunadj': ticker}, inplace=True)
    stock_close_df = pd.concat([stock_close_df, stock_close], axis=1)
    component_close = stock_data.loc[:, ['closeunadj']] * stock_meta.loc[ticker, 'Share_Outstanding'] / total_shares
    component_close.rename(columns={'closeunadj': ticker}, inplace=True)
    index_df = pd.concat([index_df, component_close], axis=1)
428 data points retrieved from the API call for: AAPL
428 data points retrieved from the API call for: ABBV
428 data points retrieved from the API call for: ABT
428 data points retrieved from the API call for: ADBE
428 data points retrieved from the API call for: AKAM
428 data points retrieved from the API call for: AMD
428 data points retrieved from the API call for: AMT
428 data points retrieved from the API call for: AMZN
428 data points retrieved from the API call for: ATVI
183 data points retrieved from the API call for: BNTX
428 data points retrieved from the API call for: BSX
295 data points retrieved from the API call for: BYND
428 data points retrieved from the API call for: CAG
428 data points retrieved from the API call for: CCI
428 data points retrieved from the API call for: CHGG
265 data points retrieved from the API call for: CHWY
428 data points retrieved from the API call for: CL
428 data points retrieved from the API call for: CLX
428 data points retrieved from the API call for: CMG
428 data points retrieved from the API call for: CNC
428 data points retrieved from the API call for: COR
428 data points retrieved from the API call for: COST
428 data points retrieved from the API call for: COUP
428 data points retrieved from the API call for: CPB
428 data points retrieved from the API call for: CRM
266 data points retrieved from the API call for: CRWD
428 data points retrieved from the API call for: CTXS
428 data points retrieved from the API call for: D
198 data points retrieved from the API call for: DDOG
428 data points retrieved from the API call for: DG
428 data points retrieved from the API call for: DHR
428 data points retrieved from the API call for: DOCU
428 data points retrieved from the API call for: DPZ
428 data points retrieved from the API call for: DXCM
428 data points retrieved from the API call for: EA
428 data points retrieved from the API call for: EBAY
428 data points retrieved from the API call for: EBS
428 data points retrieved from the API call for: EQIX
428 data points retrieved from the API call for: ETSY
428 data points retrieved from the API call for: EVBG
284 data points retrieved from the API call for: FSLY
428 data points retrieved from the API call for: GILD
428 data points retrieved from the API call for: GIS
428 data points retrieved from the API call for: GOLD
428 data points retrieved from the API call for: GOOG
428 data points retrieved from the API call for: HD
428 data points retrieved from the API call for: HRL
428 data points retrieved from the API call for: JNJ
428 data points retrieved from the API call for: KR
428 data points retrieved from the API call for: LLY
428 data points retrieved from the API call for: LOGI
237 data points retrieved from the API call for: LVGO
428 data points retrieved from the API call for: MASI
428 data points retrieved from the API call for: MDLZ
428 data points retrieved from the API call for: MKC
428 data points retrieved from the API call for: MKTX
394 data points retrieved from the API call for: MRNA
428 data points retrieved from the API call for: MRVL
428 data points retrieved from the API call for: MSFT
428 data points retrieved from the API call for: NEM
202 data points retrieved from the API call for: NET
428 data points retrieved from the API call for: NFLX
428 data points retrieved from the API call for: NVDA
428 data points retrieved from the API call for: OKTA
428 data points retrieved from the API call for: PANW
428 data points retrieved from the API call for: PEP
428 data points retrieved from the API call for: PFE
428 data points retrieved from the API call for: PG
428 data points retrieved from the API call for: PLD
428 data points retrieved from the API call for: PRGO
193 data points retrieved from the API call for: PTON
428 data points retrieved from the API call for: PYPL
428 data points retrieved from the API call for: REGN
428 data points retrieved from the API call for: RMD
428 data points retrieved from the API call for: RNG
428 data points retrieved from the API call for: SHOP
428 data points retrieved from the API call for: SJM
428 data points retrieved from the API call for: SNY
428 data points retrieved from the API call for: SPGI
428 data points retrieved from the API call for: SPLK
428 data points retrieved from the API call for: SPOT
428 data points retrieved from the API call for: SQ
428 data points retrieved from the API call for: TDOC
428 data points retrieved from the API call for: TGT
428 data points retrieved from the API call for: TMO
428 data points retrieved from the API call for: TTD
428 data points retrieved from the API call for: TTWO
314 data points retrieved from the API call for: TW
428 data points retrieved from the API call for: TWLO
428 data points retrieved from the API call for: UNH
428 data points retrieved from the API call for: VEEV
428 data points retrieved from the API call for: VMW
428 data points retrieved from the API call for: VZ
428 data points retrieved from the API call for: WING
428 data points retrieved from the API call for: WIX
428 data points retrieved from the API call for: WMT
261 data points retrieved from the API call for: WORK
304 data points retrieved from the API call for: ZM
428 data points retrieved from the API call for: ZS
428 data points retrieved from the API call for: ZTS
In [17]:
stock_open_df.dropna(inplace=True)
stock_close_df.dropna(inplace=True)
In [18]:
index_df.dropna(inplace=True)
index_df['JC_MAD'] = index_df[stock_list].sum(axis=1)
In [19]:
index_df.head()
Out[19]:
JC_MAD AAPL ABBV ABT ADBE AKAM AMD AMT AMZN ATVI BNTX BSX BYND CAG CCI CHGG CHWY CL CLX CMG CNC COR COST COUP CPB CRM CRWD CTXS D DDOG DG DHR DOCU DPZ DXCM EA EBAY EBS EQIX ETSY EVBG FSLY GILD GIS GOLD GOOG HD HRL JNJ KR LLY LOGI LVGO MASI MDLZ MKC MKTX MRNA MRVL MSFT NEM NET NFLX NVDA OKTA PANW PEP PFE PG PLD PRGO PTON PYPL REGN RMD RNG SHOP SJM SNY SPGI SPLK SPOT SQ TDOC TGT TMO TTD TTWO TW TWLO UNH VEEV VMW VZ WING WIX WMT WORK ZM ZS ZTS
2019-10-10 121.212598 14.105713 1.855790 2.005001 1.865578 0.205100 0.470126 1.418810 12.135955 0.585103 0.046044 0.767502 0.119718 0.195310 0.814745 0.055072 0.030247 0.857364 0.266741 0.326537 0.361152 0.062944 1.855623 0.145758 0.202238 1.862532 0.131342 0.169302 0.970763 0.088645 0.571511 1.368957 0.174266 0.140961 0.201647 0.377855 0.376976 0.038931 0.716369 0.096972 0.032744 0.027706 1.122352 0.468186 0.450414 5.746861 3.523304 0.317649 4.809269 0.262312 1.447313 0.095487 0.026093 0.110663 1.118733 0.290469 0.192546 0.077874 0.219160 14.919962 0.442040 0.038110 1.744759 1.592105 0.188195 0.285573 2.706077 2.811945 4.269805 0.896419 0.100247 0.067444 1.669708 0.467043 0.266967 0.190007 0.483513 0.172627 1.591144 0.855132 0.265489 0.293498 0.318470 0.071619 0.781978 1.567827 0.107367 0.197262 0.048740 0.200814 3.001103 0.286946 0.239897 3.501739 0.036905 0.090916 4.791014 0.145748 0.182902 0.087318 0.855889
2019-10-11 122.105029 14.480901 1.835350 1.992242 1.888035 0.205536 0.492820 1.407335 12.218214 0.597418 0.044686 0.772554 0.115660 0.195723 0.805668 0.056191 0.031021 0.854214 0.265856 0.327563 0.362626 0.063545 1.858496 0.149230 0.200314 1.900187 0.128903 0.171502 0.972188 0.088820 0.577671 1.368562 0.172683 0.142632 0.202809 0.384633 0.383138 0.038990 0.709370 0.099473 0.034319 0.026804 1.135304 0.465957 0.427528 5.779098 3.569701 0.313762 4.893857 0.266824 1.466805 0.096879 0.024405 0.111299 1.106821 0.288839 0.186701 0.077296 0.226218 14.982173 0.427055 0.038437 1.759999 1.617853 0.190938 0.287101 2.701170 2.837087 4.240041 0.896732 0.103024 0.065258 1.686980 0.470815 0.265310 0.188907 0.490651 0.172627 1.595048 0.862014 0.271467 0.301245 0.315954 0.071030 0.790889 1.584474 0.114759 0.197294 0.047814 0.208188 2.978836 0.290287 0.245085 3.507592 0.037093 0.091732 4.816248 0.159025 0.183778 0.088832 0.863010
2019-10-14 121.950654 14.460057 1.838590 1.996995 1.884575 0.206202 0.505741 1.414797 12.250030 0.599488 0.041226 0.767300 0.111188 0.191383 0.802426 0.057048 0.030711 0.840888 0.263149 0.326687 0.359595 0.063288 1.857996 0.150131 0.200143 1.900187 0.116606 0.171624 0.964353 0.082395 0.573968 1.369351 0.174136 0.139539 0.209115 0.383367 0.381250 0.038909 0.710485 0.099221 0.034635 0.025602 1.144530 0.463042 0.430043 5.787133 3.562400 0.312313 4.871127 0.265173 1.460579 0.096384 0.025526 0.110939 1.094707 0.285771 0.187366 0.076609 0.226312 14.968229 0.431369 0.036617 1.776173 1.622550 0.190166 0.291372 2.697442 2.852015 4.203625 0.901120 0.102272 0.062577 1.689803 0.478126 0.264409 0.192196 0.513063 0.172433 1.592919 0.856495 0.268927 0.300410 0.317443 0.072199 0.786080 1.587881 0.116413 0.195264 0.047386 0.212285 2.958983 0.292559 0.244167 3.488278 0.037031 0.091587 4.773389 0.150643 0.182361 0.087688 0.850381
2019-10-15 123.186032 14.426340 1.857036 2.051036 1.895498 0.209622 0.508889 1.405830 12.468374 0.605482 0.041776 0.777202 0.107438 0.186561 0.793702 0.057800 0.031914 0.828652 0.262246 0.326139 0.370326 0.062864 1.863429 0.146754 0.199203 1.943058 0.118081 0.173650 0.966015 0.086653 0.577030 1.357414 0.173877 0.141492 0.199702 0.388554 0.386418 0.040214 0.715680 0.100749 0.034970 0.025981 1.158546 0.459613 0.418978 5.910137 3.584305 0.312618 4.950126 0.267484 1.484944 0.096266 0.026923 0.111888 1.091073 0.282247 0.187307 0.078809 0.229605 15.185432 0.427850 0.038180 1.768211 1.708144 0.190314 0.290048 2.675462 2.867728 4.103831 0.930892 0.103737 0.068333 1.720360 0.475590 0.266926 0.192458 0.515715 0.173127 1.616694 0.863582 0.269309 0.309331 0.330073 0.073504 0.791314 1.597769 0.122607 0.199744 0.047386 0.209772 3.200435 0.298745 0.244421 3.543880 0.036997 0.091018 4.787809 0.151377 0.183159 0.085629 0.864622
2019-10-16 122.745450 14.368100 1.863268 2.046032 1.850110 0.208704 0.510380 1.391785 12.539274 0.605809 0.041840 0.771544 0.109084 0.185458 0.793938 0.056488 0.031557 0.821989 0.262777 0.324762 0.373029 0.063733 1.865865 0.133112 0.201596 1.869656 0.111280 0.174488 0.971001 0.080179 0.577635 1.355441 0.174059 0.141619 0.200877 0.392923 0.386816 0.039888 0.710973 0.098281 0.034557 0.024845 1.159433 0.451383 0.426019 5.913133 3.588565 0.309188 5.036951 0.269684 1.461256 0.096336 0.028127 0.111742 1.095716 0.281248 0.182535 0.077819 0.223771 15.060474 0.429439 0.036990 1.780838 1.689355 0.174775 0.290540 2.677228 2.855157 4.115386 0.930161 0.103968 0.067124 1.712057 0.468671 0.268379 0.186162 0.482276 0.173482 1.623081 0.859663 0.255243 0.304036 0.323450 0.072683 0.793435 1.567268 0.113261 0.195247 0.050188 0.199922 3.178972 0.286163 0.241036 3.528662 0.037248 0.089721 4.783403 0.144646 0.174350 0.084272 0.859382
In [20]:
index_df.tail()
Out[20]:
JC_MAD AAPL ABBV ABT ADBE AKAM AMD AMT AMZN ATVI BNTX BSX BYND CAG CCI CHGG CHWY CL CLX CMG CNC COR COST COUP CPB CRM CRWD CTXS D DDOG DG DHR DOCU DPZ DXCM EA EBAY EBS EQIX ETSY EVBG FSLY GILD GIS GOLD GOOG HD HRL JNJ KR LLY LOGI LVGO MASI MDLZ MKC MKTX MRNA MRVL MSFT NEM NET NFLX NVDA OKTA PANW PEP PFE PG PLD PRGO PTON PYPL REGN RMD RNG SHOP SJM SNY SPGI SPLK SPOT SQ TDOC TGT TMO TTD TTWO TW TWLO UNH VEEV VMW VZ WING WIX WMT WORK ZM ZS ZTS
2020-06-25 162.787609 22.366589 2.417636 2.242179 2.964450 0.236155 0.860241 1.594875 19.432795 0.830522 0.193066 0.684851 0.127949 0.232098 0.970951 0.113588 0.058897 0.880018 0.380284 0.413778 0.518997 0.064435 1.876793 0.260161 0.211982 2.395938 0.226089 0.246008 0.963166 0.223107 0.678856 1.698370 0.437093 0.206763 0.519705 0.533889 0.490974 0.056431 0.872412 0.170008 0.066859 0.090910 1.339336 0.517225 0.647077 6.853089 3.732776 0.371010 5.204638 0.360680 2.204540 0.148435 0.098992 0.168812 1.026262 0.312996 0.272049 0.340972 0.318718 21.488607 0.665103 0.084016 2.898248 3.301989 0.335456 0.309587 2.578907 2.539314 4.127991 0.955546 0.105510 0.169223 2.864776 0.970465 0.381206 0.304403 1.365466 0.170562 1.840249 1.116983 0.433771 0.697670 0.537954 0.212405 0.847326 1.965007 0.236949 0.226271 0.073816 0.394235 3.973481 0.452156 0.236385 3.176908 0.058040 0.184893 4.795019 0.200816 0.668425 0.206038 0.908958
2020-06-26 159.386622 21.679358 2.396200 2.219412 2.896402 0.241847 0.829926 1.545467 18.997448 0.832592 0.200891 0.672524 0.124718 0.224865 0.950968 0.114410 0.055919 0.866450 0.380957 0.407565 0.489427 0.063604 1.852001 0.261556 0.206853 2.330169 0.211289 0.249291 0.945835 0.210408 0.674299 1.694030 0.460920 0.202398 0.500084 0.534664 0.505782 0.055823 0.859517 0.172123 0.068482 0.096298 1.323013 0.507623 0.650597 6.465914 3.666299 0.367504 5.135327 0.359579 2.204134 0.148152 0.103751 0.166477 1.011120 0.308981 0.262649 0.337013 0.312696 21.058491 0.673617 0.082919 2.758222 3.185428 0.334257 0.307527 2.530238 2.517315 4.034850 0.938414 0.103987 0.170302 2.837706 0.957002 0.379835 0.315088 1.356048 0.166158 1.806538 1.095790 0.442220 0.691097 0.535489 0.203517 0.827594 1.960482 0.235399 0.227528 0.070741 0.402665 3.848194 0.448547 0.231719 3.111357 0.056542 0.183530 4.739342 0.199042 0.661445 0.195682 0.891157
2020-06-29 160.836786 22.178995 2.403927 2.226918 2.877949 0.240975 0.832908 1.591364 18.909335 0.822784 0.212758 0.700209 0.115801 0.232167 0.956686 0.116701 0.053786 0.877474 0.384991 0.412615 0.512690 0.063711 1.883413 0.258938 0.210486 2.332204 0.209813 0.252870 0.956875 0.208466 0.676542 1.700640 0.445580 0.204257 0.519849 0.533684 0.509957 0.055935 0.862497 0.172710 0.065697 0.086992 1.322836 0.520740 0.657136 6.632661 3.744034 0.368495 5.181162 0.375534 2.202645 0.150796 0.099005 0.168184 1.021215 0.314469 0.267357 0.341412 0.315801 21.284811 0.675887 0.081939 2.782109 3.201085 0.328261 0.309846 2.572431 2.564456 4.119938 0.952412 0.105183 0.166746 2.795856 0.956235 0.385339 0.295123 1.374556 0.169497 1.812570 1.094733 0.437052 0.691593 0.532306 0.197293 0.838556 1.959644 0.234890 0.222065 0.070219 0.384166 3.886826 0.439497 0.238821 3.200905 0.057098 0.181978 4.768983 0.188885 0.640221 0.194556 0.886589
2020-06-30 163.813331 22.364137 2.447299 2.287463 2.953323 0.245795 0.871505 1.621085 19.462707 0.827144 0.215797 0.709505 0.117940 0.242294 0.986454 0.117628 0.053238 0.887530 0.388158 0.415143 0.520553 0.064901 1.893530 0.262827 0.212110 2.383089 0.214497 0.258266 0.963641 0.216509 0.678287 1.744542 0.446982 0.204406 0.529249 0.539238 0.521287 0.058641 0.879248 0.178317 0.067238 0.094761 1.365061 0.528542 0.677506 6.721289 3.810815 0.367961 5.240411 0.372453 2.222408 0.153959 0.104028 0.174506 1.032319 0.314521 0.268596 0.353126 0.329916 21.828623 0.700861 0.083899 2.830630 3.304686 0.328902 0.313366 2.595589 2.569170 4.186818 0.974977 0.106552 0.168378 2.893507 0.976241 0.392869 0.310426 1.414462 0.170675 1.811506 1.122639 0.446490 0.673464 0.538775 0.200968 0.848174 2.024109 0.235092 0.224933 0.069031 0.399516 3.956445 0.447573 0.244943 3.226657 0.058148 0.186730 4.797823 0.190231 0.653048 0.202143 0.920580
2020-07-01 165.756975 22.321836 2.471478 2.293217 2.983853 0.244050 0.871008 1.664035 20.308427 0.850356 0.207390 0.712940 0.124683 0.245739 1.013215 0.119062 0.055347 0.884743 0.388512 0.421708 0.536199 0.067212 1.903147 0.273026 0.210742 2.441099 0.220186 0.260832 0.977767 0.222559 0.679746 1.747501 0.464502 0.207875 0.522473 0.552183 0.526356 0.060740 0.911636 0.186676 0.071908 0.096231 1.349448 0.518083 0.674237 6.837446 3.774914 0.361786 5.231095 0.369372 2.211037 0.152472 0.102948 0.175815 1.031310 0.314679 0.271325 0.338717 0.323423 21.956263 0.696547 0.086186 3.020981 3.315907 0.346462 0.312943 2.597551 2.650881 4.202225 0.993990 0.105703 0.175606 2.946651 0.953574 0.390537 0.316199 1.514959 0.169723 1.819313 1.139812 0.457523 0.675316 0.595045 0.209403 0.841244 2.009752 0.248186 0.232250 0.070326 0.414719 3.993736 0.462466 0.242159 3.199734 0.059956 0.193690 4.794218 0.190047 0.667446 0.205854 0.921587
In [21]:
title_string = 'Historical Pricing for the Cramer COVID-19 Index'
index_df['JC_MAD'].plot(figsize=(16,9), title=title_string)
plt.show()

Task 3. Develop Strategy and Train Model

In [22]:
def ma_crossover(data):
    wait_for_entry = True
    for x in range(len(data)):
        if data['ma_change'].iloc[x] > 0:
            data['signal'].iloc[x] = 1  # Signal = 1 means we should take a long position
        else:
            data['signal'].iloc[x] = 0  # Signal = 0 means we should not have a position
        if x != 0:
            data['signal_chg'].iloc[x] = data['signal'].iloc[x] - data['signal'].iloc[x-1]
            if wait_for_entry and (data['signal_chg'].iloc[x-1] == 1):
                data['entry_exit'].iloc[x] = data['signal_chg'].iloc[x-1]
                wait_for_entry = False
            elif (not wait_for_entry) and (data['signal_chg'].iloc[x-1] != 0):
                data['entry_exit'].iloc[x] = data['signal_chg'].iloc[x-1]
In [23]:
model_collection = {}

for ticker in stock_list:
    print('Processing trading model for ticker symbol:', ticker)
    model_collection[ticker] = pd.DataFrame(stock_close_df[ticker])
    model_collection[ticker].rename(columns={ticker: 'close'}, inplace=True)
    model_collection[ticker]['open'] = stock_open_df[ticker]
    model_collection[ticker]['fast_ma'] = model_collection[ticker]['close'].rolling(fast_ma).mean()
    model_collection[ticker]['slow_ma'] = model_collection[ticker]['close'].rolling(slow_ma).mean()
    model_collection[ticker]['ma_change'] = model_collection[ticker]['fast_ma'] - model_collection[ticker]['slow_ma']
    model_collection[ticker]['signal'] = np.zeros(len(model_collection[ticker]))
    model_collection[ticker]['signal_chg'] = np.zeros(len(model_collection[ticker]))
    model_collection[ticker]['entry_exit'] = np.zeros(len(model_collection[ticker]))
    model_collection[ticker] = model_collection[ticker][model_start_date:model_end_date]
    if verbose:
        print(model_collection[ticker].head())
        print('...')
        print(model_collection[ticker].tail())
        print()
    ma_crossover(model_collection[ticker])
Processing trading model for ticker symbol: AAPL
Processing trading model for ticker symbol: ABBV
Processing trading model for ticker symbol: ABT
Processing trading model for ticker symbol: ADBE
Processing trading model for ticker symbol: AKAM
Processing trading model for ticker symbol: AMD
Processing trading model for ticker symbol: AMT
Processing trading model for ticker symbol: AMZN
Processing trading model for ticker symbol: ATVI
Processing trading model for ticker symbol: BNTX
Processing trading model for ticker symbol: BSX
Processing trading model for ticker symbol: BYND
Processing trading model for ticker symbol: CAG
Processing trading model for ticker symbol: CCI
Processing trading model for ticker symbol: CHGG
Processing trading model for ticker symbol: CHWY
Processing trading model for ticker symbol: CL
Processing trading model for ticker symbol: CLX
Processing trading model for ticker symbol: CMG
Processing trading model for ticker symbol: CNC
Processing trading model for ticker symbol: COR
Processing trading model for ticker symbol: COST
Processing trading model for ticker symbol: COUP
Processing trading model for ticker symbol: CPB
Processing trading model for ticker symbol: CRM
Processing trading model for ticker symbol: CRWD
Processing trading model for ticker symbol: CTXS
Processing trading model for ticker symbol: D
Processing trading model for ticker symbol: DDOG
Processing trading model for ticker symbol: DG
Processing trading model for ticker symbol: DHR
Processing trading model for ticker symbol: DOCU
Processing trading model for ticker symbol: DPZ
Processing trading model for ticker symbol: DXCM
Processing trading model for ticker symbol: EA
Processing trading model for ticker symbol: EBAY
Processing trading model for ticker symbol: EBS
Processing trading model for ticker symbol: EQIX
Processing trading model for ticker symbol: ETSY
Processing trading model for ticker symbol: EVBG
Processing trading model for ticker symbol: FSLY
Processing trading model for ticker symbol: GILD
Processing trading model for ticker symbol: GIS
Processing trading model for ticker symbol: GOLD
Processing trading model for ticker symbol: GOOG
Processing trading model for ticker symbol: HD
Processing trading model for ticker symbol: HRL
Processing trading model for ticker symbol: JNJ
Processing trading model for ticker symbol: KR
Processing trading model for ticker symbol: LLY
Processing trading model for ticker symbol: LOGI
Processing trading model for ticker symbol: LVGO
Processing trading model for ticker symbol: MASI
Processing trading model for ticker symbol: MDLZ
Processing trading model for ticker symbol: MKC
Processing trading model for ticker symbol: MKTX
Processing trading model for ticker symbol: MRNA
Processing trading model for ticker symbol: MRVL
Processing trading model for ticker symbol: MSFT
Processing trading model for ticker symbol: NEM
Processing trading model for ticker symbol: NET
Processing trading model for ticker symbol: NFLX
Processing trading model for ticker symbol: NVDA
Processing trading model for ticker symbol: OKTA
Processing trading model for ticker symbol: PANW
Processing trading model for ticker symbol: PEP
Processing trading model for ticker symbol: PFE
Processing trading model for ticker symbol: PG
Processing trading model for ticker symbol: PLD
Processing trading model for ticker symbol: PRGO
Processing trading model for ticker symbol: PTON
Processing trading model for ticker symbol: PYPL
Processing trading model for ticker symbol: REGN
Processing trading model for ticker symbol: RMD
Processing trading model for ticker symbol: RNG
Processing trading model for ticker symbol: SHOP
Processing trading model for ticker symbol: SJM
Processing trading model for ticker symbol: SNY
Processing trading model for ticker symbol: SPGI
Processing trading model for ticker symbol: SPLK
Processing trading model for ticker symbol: SPOT
Processing trading model for ticker symbol: SQ
Processing trading model for ticker symbol: TDOC
Processing trading model for ticker symbol: TGT
Processing trading model for ticker symbol: TMO
Processing trading model for ticker symbol: TTD
Processing trading model for ticker symbol: TTWO
Processing trading model for ticker symbol: TW
Processing trading model for ticker symbol: TWLO
Processing trading model for ticker symbol: UNH
Processing trading model for ticker symbol: VEEV
Processing trading model for ticker symbol: VMW
Processing trading model for ticker symbol: VZ
Processing trading model for ticker symbol: WING
Processing trading model for ticker symbol: WIX
Processing trading model for ticker symbol: WMT
Processing trading model for ticker symbol: WORK
Processing trading model for ticker symbol: ZM
Processing trading model for ticker symbol: ZS
Processing trading model for ticker symbol: ZTS
In [24]:
for ticker in stock_list:
    print('List the signal change and entry/exit points for', ticker)
    print(model_collection[ticker][(model_collection[ticker].signal_chg != 0) | (model_collection[ticker].entry_exit != 0)])
    print()
List the signal change and entry/exit points for AAPL
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  280.02  279.50  269.1995  257.7316    11.4679     1.0         1.0         0.0
2019-12-20  279.44  282.23  270.0710  258.7186    11.3524     1.0         0.0         1.0
2020-03-05  292.92  295.52  307.4485  307.6264    -0.1779     0.0        -1.0         0.0
2020-03-06  289.03  282.00  305.6395  307.7270    -2.0875     0.0         0.0        -1.0
2020-04-30  293.80  289.96  273.9600  271.0604     2.8996     1.0         1.0         0.0
2020-05-01  289.07  286.25  276.1670  270.4358     5.7312     1.0         0.0         1.0

List the signal change and entry/exit points for ABBV
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  88.77  89.68  87.5935  83.4534     4.1401     1.0         1.0         0.0
2019-12-20  89.29  90.40  87.7320  83.7502     3.9818     1.0         0.0         1.0
2020-01-28  83.77  84.99  87.8715  87.9786    -0.1071     0.0        -1.0         0.0
2020-01-29  83.20  83.80  87.6055  87.8900    -0.2845     0.0         0.0        -1.0
2020-02-21  94.96  93.96  89.2485  88.9386     0.3099     1.0         1.0         0.0
2020-02-24  93.14  92.17  89.7285  89.0702     0.6583     1.0         0.0         1.0
2020-03-16  74.27  79.00  88.1070  88.1932    -0.0862     0.0        -1.0         0.0
2020-03-17  73.02  75.71  87.0775  87.8796    -0.8021     0.0         0.0        -1.0
2020-05-01  82.84  81.95  81.0030  80.6106     0.3924     1.0         1.0         0.0
2020-05-04  81.86  82.22  81.4275  80.3486     1.0789     1.0         0.0         1.0

List the signal change and entry/exit points for ABT
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  87.35  86.74  85.3185  83.7430     1.5755     1.0         1.0         0.0
2019-12-20  86.66  88.99  85.4675  83.8734     1.5941     1.0         0.0         1.0
2020-02-27  79.19  80.40  87.1775  87.4096    -0.2321     0.0        -1.0         0.0
2020-02-28  77.03  77.12  86.5710  87.2222    -0.6512     0.0         0.0        -1.0
2020-04-21  94.05  96.10  83.5080  82.1262     1.3818     1.0         1.0         0.0
2020-04-22  95.48  94.28  84.7975  82.2698     2.5277     1.0         0.0         1.0
2020-06-12  89.02  89.25  90.7260  90.7720    -0.0460     0.0        -1.0         0.0
2020-06-15  89.55  87.52  90.7090  90.9742    -0.2652     0.0         0.0        -1.0

List the signal change and entry/exit points for ADBE
             close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  327.63  324.38  309.29100  292.2690   17.02200     1.0         1.0         0.0
2019-12-20  327.61  328.37  310.73150  293.3216   17.40990     1.0         0.0         1.0
2020-03-12  285.00  290.41  350.32050  350.3536   -0.03310     0.0        -1.0         0.0
2020-03-13  335.50  312.88  348.35350  350.4674   -2.11390     0.0         0.0        -1.0
2020-04-30  353.64  348.01  330.85775  328.5449    2.31285     1.0         1.0         0.0
2020-05-01  343.84  347.24  332.85175  327.8425    5.00925     1.0         0.0         1.0

List the signal change and entry/exit points for AKAM
             close    open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-09   93.19   92.00  86.5950  86.5788     0.0162     1.0         1.0         0.0
2020-01-10   93.53   93.59  87.0790  86.6916     0.3874     1.0         0.0         1.0
2020-03-12   80.05   81.62  92.9755  93.4671    -0.4916     0.0        -1.0         0.0
2020-03-13   85.73   84.38  92.2820  93.4541    -1.1721     0.0         0.0        -1.0
2020-04-15  100.39  100.50  93.2900  93.1304     0.1596     1.0         1.0         0.0
2020-04-16  105.84  100.63  93.7270  93.3428     0.3842     1.0         0.0         1.0

List the signal change and entry/exit points for AMD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  42.83  42.63  40.2205  36.7050     3.5155     1.0         1.0         0.0
2019-12-20  44.15  43.44  40.4520  37.0204     3.4316     1.0         0.0         1.0
2020-03-12  39.01  42.00  49.2115  49.3905    -0.1790     0.0        -1.0         0.0
2020-03-13  43.90  42.20  48.6800  49.3513    -0.6713     0.0         0.0        -1.0
2020-04-20  56.97  55.98  48.7140  48.2246     0.4894     1.0         1.0         0.0
2020-04-21  52.92  56.90  49.2780  48.2884     0.9896     1.0         0.0         1.0
2020-06-19  54.23  54.41  53.8680  53.9902    -0.1222     0.0        -1.0         0.0
2020-06-22  54.76  54.67  53.8475  54.1178    -0.2703     0.0         0.0        -1.0

List the signal change and entry/exit points for AMT
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-26  227.87  226.69  216.2285  215.6750     0.5535     1.0         1.0         0.0
2019-12-27  229.08  228.52  216.9370  215.8172     1.1198     1.0         0.0         1.0
2020-03-18  217.14  210.00  236.4695  237.6282    -1.1587     0.0        -1.0         0.0
2020-03-19  209.00  217.57  234.5425  237.3346    -2.7921     0.0         0.0        -1.0
2020-04-22  252.98  246.23  235.6220  234.8042     0.8178     1.0         1.0         0.0
2020-04-23  248.60  252.19  238.0890  234.6908     3.3982     1.0         0.0         1.0

List the signal change and entry/exit points for AMZN
              close     open    fast_ma    slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  1792.28  1780.50  1768.4870  1768.3124     0.1746     1.0         1.0         0.0
2019-12-20  1786.50  1799.62  1771.0765  1769.6372     1.4393     1.0         0.0         1.0
2020-03-16  1689.15  1641.51  1931.6285  1945.1250   -13.4965     0.0        -1.0         0.0
2020-03-17  1807.84  1775.47  1914.2370  1943.7824   -29.5454     0.0         0.0        -1.0
2020-04-15  2307.68  2257.68  1982.1495  1980.6380     1.5115     1.0         1.0         0.0
2020-04-16  2408.19  2346.00  2011.0590  1987.8084    23.2506     1.0         0.0         1.0

List the signal change and entry/exit points for ATVI
            close   open   fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  59.13  58.71  55.79400  55.0397    0.75430     1.0         1.0         0.0
2019-12-20  59.22  59.40  56.07050  55.1503    0.92020     1.0         0.0         1.0
2020-03-16  52.76  53.11  60.01325  60.1392   -0.12595     0.0        -1.0         0.0
2020-03-17  56.16  53.66  59.63425  60.0890   -0.45475     0.0         0.0        -1.0
2020-04-20  66.50  66.62  60.54150  60.0457    0.49580     1.0         1.0         0.0
2020-04-21  65.72  65.92  61.00400  60.1295    0.87450     1.0         0.0         1.0

List the signal change and entry/exit points for BNTX
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  29.34  33.87  26.2345  20.7948     5.4397     1.0         1.0         0.0
2019-12-20  34.97  31.81  26.9990  21.2094     5.7896     1.0         0.0         1.0
2020-02-11  30.71  31.48  32.9515  32.9762    -0.0247     0.0        -1.0         0.0
2020-02-12  29.56  30.00  32.7030  33.1278    -0.4248     0.0         0.0        -1.0
2020-03-17  66.60  65.00  35.9460  35.0848     0.8612     1.0         1.0         0.0
2020-03-18  92.00  90.39  38.9335  36.0332     2.9003     1.0         0.0         1.0
2020-05-05  50.00  48.41  45.3605  45.8842    -0.5237     0.0        -1.0         0.0
2020-05-06  47.78  50.14  45.4695  46.1710    -0.7015     0.0         0.0        -1.0
2020-05-15  49.49  48.51  48.1010  47.9788     0.1222     1.0         1.0         0.0
2020-05-18  60.17  54.74  48.9410  48.4204     0.5206     1.0         0.0         1.0
2020-05-21  51.90  54.10  49.4295  49.5388    -0.1093     0.0        -1.0         0.0
2020-05-22  51.03  52.15  49.5935  49.9884    -0.3949     0.0         0.0        -1.0
2020-05-29  49.53  48.19  49.7390  49.2952     0.4438     1.0         1.0         0.0
2020-06-01  52.30  50.00  50.0985  49.1552     0.9433     1.0         0.0         1.0

List the signal change and entry/exit points for BSX
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  44.83  44.18  43.6425  41.6980     1.9445     1.0         1.0         0.0
2019-12-20  45.37  45.26  43.7930  41.8458     1.9472     1.0         0.0         1.0
2020-02-03  42.23  42.17  43.9205  44.0154    -0.0949     0.0        -1.0         0.0
2020-02-04  42.88  42.83  43.7970  44.0208    -0.2238     0.0         0.0        -1.0
2020-04-28  35.93  37.42  34.8625  34.7148     0.1477     1.0         1.0         0.0
2020-04-29  37.43  36.80  35.1025  34.6202     0.4823     1.0         0.0         1.0
2020-06-26  33.28  33.77  36.5215  36.5346    -0.0131     0.0        -1.0         0.0
2020-06-29  34.65  33.56  36.3790  36.4618    -0.0828     0.0         0.0        -1.0

List the signal change and entry/exit points for BYND
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-13  114.34   99.71   80.2690   79.1913     1.0777     1.0         1.0         0.0
2020-01-14  117.05  124.73   82.3705   79.8433     2.5272     1.0         0.0         1.0
2020-03-12   74.00   72.50  103.3765  105.2430    -1.8665     0.0        -1.0         0.0
2020-03-13   73.06   76.01  101.4290  105.1922    -3.7632     0.0         0.0        -1.0
2020-05-01   91.53   94.40   83.3525   81.8386     1.5139     1.0         1.0         0.0
2020-05-04   95.16   89.00   85.1150   81.3928     3.7222     1.0         0.0         1.0

List the signal change and entry/exit points for CAG
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  33.66  31.16  29.0900  28.3086     0.7814     1.0         1.0         0.0
2019-12-20  35.07  33.67  29.4325  28.4430     0.9895     1.0         0.0         1.0
2020-02-24  29.23  29.20  31.9455  32.0924    -0.1469     0.0        -1.0         0.0
2020-02-25  28.38  29.31  31.7380  32.0874    -0.3494     0.0         0.0        -1.0
2020-04-15  32.87  33.15  29.2960  29.2920     0.0040     1.0         1.0         0.0
2020-04-16  33.47  33.19  29.6065  29.3230     0.2835     1.0         0.0         1.0
2020-06-26  32.64  33.79  33.6455  33.6674    -0.0219     0.0        -1.0         0.0
2020-06-29  33.70  32.97  33.5945  33.6698    -0.0753     0.0         0.0        -1.0

List the signal change and entry/exit points for CCI
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-30  141.40  140.69  136.4865  136.1674     0.3191     1.0         1.0         0.0
2019-12-31  142.15  141.45  137.0465  136.1292     0.9173     1.0         0.0         1.0
2020-03-20  128.06  129.31  151.2820  152.0238    -0.7418     0.0        -1.0         0.0
2020-03-23  116.98  126.80  148.8130  151.5584    -2.7454     0.0         0.0        -1.0
2020-04-23  160.55  162.74  153.9070  152.6478     1.2592     1.0         1.0         0.0
2020-04-24  161.61  161.61  154.8640  152.6158     2.2482     1.0         0.0         1.0

List the signal change and entry/exit points for CHGG
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  38.68  38.77  38.0415  35.2212     2.8203     1.0         1.0         0.0
2019-12-20  38.35  38.88  38.1555  35.3584     2.7971     1.0         0.0         1.0
2020-03-03  39.26  40.60  40.5035  40.5140    -0.0105     0.0        -1.0         0.0
2020-03-04  39.79  39.86  40.3615  40.5362    -0.1747     0.0         0.0        -1.0
2020-04-27  41.85  40.14  36.8660  36.8334     0.0326     1.0         1.0         0.0
2020-04-28  41.15  42.70  37.0985  36.8548     0.2437     1.0         0.0         1.0

List the signal change and entry/exit points for CHWY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  28.56  28.22  25.4075  25.1922     0.2153     1.0         1.0         0.0
2019-12-20  29.08  28.53  25.7275  25.2660     0.4615     1.0         0.0         1.0
2020-02-18  28.92  28.54  28.2840  28.3654    -0.0814     0.0        -1.0         0.0
2020-02-19  29.30  28.90  28.2420  28.4648    -0.2228     0.0         0.0        -1.0
2020-03-05  28.52  27.38  28.9385  28.9376     0.0009     1.0         1.0         0.0
2020-03-06  28.02  27.69  28.9540  28.9292     0.0248     1.0         0.0         1.0
2020-03-11  25.46  26.72  28.7640  28.7892    -0.0252     0.0        -1.0         0.0
2020-03-12  22.77  23.09  28.4975  28.6748    -0.1773     0.0         0.0        -1.0
2020-03-26  33.81  30.89  28.8735  28.8474     0.0261     1.0         1.0         0.0
2020-03-27  36.16  33.49  29.2015  28.9606     0.2409     1.0         0.0         1.0

List the signal change and entry/exit points for CL
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  68.34  67.27  67.7985  67.6778     0.1207     1.0         1.0         0.0
2019-12-20  68.85  69.10  67.9035  67.6394     0.2641     1.0         0.0         1.0
2020-03-16  62.34  62.16  71.6185  71.8872    -0.2687     0.0        -1.0         0.0
2020-03-17  70.20  64.19  71.3250  71.9308    -0.6058     0.0         0.0        -1.0
2020-04-27  71.03  71.92  70.1550  69.7880     0.3670     1.0         1.0         0.0
2020-04-28  71.11  71.94  70.3815  69.6764     0.7051     1.0         0.0         1.0

List the signal change and entry/exit points for CLX
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  151.48  149.80  149.7985  148.8898     0.9087     1.0         1.0         0.0
2019-12-20  152.66  152.57  150.1805  148.9280     1.2525     1.0         0.0         1.0

List the signal change and entry/exit points for CMG
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  833.92  825.00  813.4525  795.5840    17.8685     1.0         1.0         0.0
2019-12-20  834.53  838.00  816.5060  795.7196    20.7864     1.0         0.0         1.0
2020-03-04  769.76  764.43  859.6475  860.1598    -0.5123     0.0        -1.0         0.0
2020-03-05  727.55  750.01  853.3245  858.0202    -4.6957     0.0         0.0        -1.0
2020-04-24  882.47  873.43  740.7020  733.3240     7.3780     1.0         1.0         0.0
2020-04-27  883.07  891.00  753.1040  732.7264    20.3776     1.0         0.0         1.0

List the signal change and entry/exit points for CNC
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  61.87  63.07  59.8655  54.5676     5.2979     1.0         1.0         0.0
2019-12-20  61.93  61.24  59.9775  54.9244     5.0531     1.0         0.0         1.0
2020-02-27  52.62  53.27  62.8200  63.2444    -0.4244     0.0        -1.0         0.0
2020-02-28  53.02  50.66  62.2950  63.1044    -0.8094     0.0         0.0        -1.0
2020-04-20  68.42  70.36  60.4570  59.7740     0.6830     1.0         1.0         0.0
2020-04-21  66.24  67.09  61.4915  59.8356     1.6559     1.0         0.0         1.0
2020-06-11  60.26  63.84  65.6340  65.6806    -0.0466     0.0        -1.0         0.0
2020-06-12  61.94  64.24  65.4390  65.7970    -0.3580     0.0         0.0        -1.0

List the signal change and entry/exit points for COR
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-22  117.81  118.00  113.2110  113.0742     0.1368     1.0         1.0         0.0
2020-01-23  117.09  117.75  113.4905  113.1434     0.3471     1.0         0.0         1.0
2020-02-28  103.73  102.07  113.3585  113.8056    -0.4471     0.0        -1.0         0.0
2020-03-02  109.52  104.30  112.9620  113.7614    -0.7994     0.0         0.0        -1.0
2020-04-16  118.50  116.98  111.0965  110.4892     0.6073     1.0         1.0         0.0
2020-04-17  119.25  120.57  111.7555  110.5114     1.2441     1.0         0.0         1.0
2020-06-25  120.19  119.09  120.7990  121.1454    -0.3464     0.0        -1.0         0.0
2020-06-26  118.64  120.19  120.4900  121.1482    -0.6582     0.0         0.0        -1.0

List the signal change and entry/exit points for COST
             close     open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-23  312.88  312.020  298.8520  298.2633     0.5887     1.0         1.0         0.0
2020-01-24  310.51  314.020  299.6660  298.4567     1.2093     1.0         0.0         1.0
2020-03-17  306.99  289.000  305.4155  306.4524    -1.0369     0.0        -1.0         0.0
2020-03-18  307.50  298.000  304.6395  306.7662    -2.1267     0.0         0.0        -1.0
2020-04-27  308.78  313.050  303.4480  302.9746     0.4734     1.0         1.0         0.0
2020-04-28  304.95  310.825  304.1395  302.7074     1.4321     1.0         0.0         1.0
2020-06-12  298.70  302.670  305.4580  305.6268    -0.1688     0.0        -1.0         0.0
2020-06-15  297.18  297.050  305.3565  305.7408    -0.3843     0.0         0.0        -1.0

List the signal change and entry/exit points for COUP
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  146.48  143.15  147.8395  141.8716     5.9679     1.0         1.0         0.0
2019-12-20  149.28  147.14  147.8490  141.7844     6.0646     1.0         0.0         1.0
2020-03-04  153.38  154.16  160.7725  161.5528    -0.7803     0.0        -1.0         0.0
2020-03-05  151.92  149.08  160.4365  161.6056    -1.1691     0.0         0.0        -1.0
2020-04-23  159.87  154.70  147.1055  146.7538     0.3517     1.0         1.0         0.0
2020-04-24  163.27  161.62  148.1330  146.7120     1.4210     1.0         0.0         1.0

List the signal change and entry/exit points for CPB
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  48.22  48.49  47.6055  47.2450     0.3605     1.0         1.0         0.0
2019-12-20  49.17  48.41  47.7220  47.2820     0.4400     1.0         0.0         1.0
2020-02-26  46.64  48.13  48.3085  48.3770    -0.0685     0.0        -1.0         0.0
2020-02-27  45.70  46.36  48.1765  48.3338    -0.1573     0.0         0.0        -1.0
2020-03-06  51.76  51.83  48.4990  48.4962     0.0028     1.0         1.0         0.0
2020-03-09  50.20  49.69  48.5650  48.5156     0.0494     1.0         0.0         1.0
2020-03-26  43.59  41.66  48.2650  48.2718    -0.0068     0.0        -1.0         0.0
2020-03-27  44.19  42.99  48.2185  48.2000     0.0185     1.0         1.0        -1.0
2020-03-30  46.53  44.95  48.1460  48.1688    -0.0228     0.0        -1.0         1.0
2020-03-31  46.16  46.52  48.0600  48.1316    -0.0716     0.0         0.0        -1.0
2020-04-23  50.54  50.31  48.2645  48.2422     0.0223     1.0         1.0         0.0
2020-04-24  50.75  50.82  48.6225  48.2936     0.3289     1.0         0.0         1.0
2020-06-11  47.97  48.39  49.6555  49.8410    -0.1855     0.0        -1.0         0.0
2020-06-12  47.07  48.16  49.3605  49.8628    -0.5023     0.0         0.0        -1.0

List the signal change and entry/exit points for CRM
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  163.33  161.59  160.3980  157.1562     3.2418     1.0         1.0         0.0
2019-12-20  164.55  164.73  160.4815  157.5190     2.9625     1.0         0.0         1.0
2020-03-10  161.34  157.23  179.0330  179.4130    -0.3800     0.0        -1.0         0.0
2020-03-11  154.57  157.68  177.3060  179.2048    -1.8988     0.0         0.0        -1.0
2020-05-04  161.47  155.58  155.4640  154.3628     1.1012     1.0         1.0         0.0
2020-05-05  163.25  162.53  156.2490  153.9090     2.3400     1.0         0.0         1.0

List the signal change and entry/exit points for CRWD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  49.47  50.45  52.1660  51.5567     0.6093     1.0         1.0         0.0
2019-12-20  49.49  49.91  51.9520  51.3183     0.6337     1.0         0.0         1.0
2019-12-27  48.92  50.30  50.5840  50.7687    -0.1847     0.0        -1.0         0.0
2019-12-30  50.03  50.00  50.1855  50.7605    -0.5750     0.0         0.0        -1.0
2020-01-15  60.25  59.23  52.4625  52.1828     0.2797     1.0         1.0         0.0
2020-01-16  62.24  61.50  53.1550  52.4346     0.7204     1.0         0.0         1.0
2020-03-11  42.85  45.96  57.9615  58.5578    -0.5963     0.0        -1.0         0.0
2020-03-12  37.82  38.60  56.5985  58.3136    -1.7151     0.0         0.0        -1.0
2020-04-16  63.45  62.00  56.8650  55.9627     0.9023     1.0         1.0         0.0
2020-04-17  64.74  64.46  58.0150  56.0212     1.9938     1.0         0.0         1.0

List the signal change and entry/exit points for CTXS
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  111.82  111.42  111.6420  108.7912     2.8508     1.0         1.0         0.0
2019-12-20  111.06  112.25  111.5330  109.0732     2.4598     1.0         0.0         1.0
2020-03-04  110.13  107.86  115.8520  116.4282    -0.5762     0.0        -1.0         0.0
2020-03-05  116.46  107.51  115.5375  116.5362    -0.9987     0.0         0.0        -1.0
2020-03-30  145.91  141.30  121.1260  119.9890     1.1370     1.0         1.0         0.0
2020-03-31  141.55  144.08  122.8835  120.4756     2.4079     1.0         0.0         1.0
2020-06-04  139.93  137.97  143.3785  143.6992    -0.3207     0.0        -1.0         0.0
2020-06-05  139.15  137.62  142.8020  143.9490    -1.1470     0.0         0.0        -1.0

List the signal change and entry/exit points for D
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  81.80  81.55  81.8225  81.8008     0.0217     1.0         1.0         0.0
2019-12-20  82.32  82.29  81.7875  81.8116    -0.0241     0.0        -1.0         1.0
2019-12-23  81.43  82.30  81.6970  81.8022    -0.1052     0.0         0.0        -1.0
2020-01-13  82.05  82.08  81.8425  81.7894     0.0531     1.0         1.0         0.0
2020-01-14  81.95  81.98  81.8960  81.7774     0.1186     1.0         0.0         1.0
2020-03-16  68.65  71.28  83.5740  83.8802    -0.3062     0.0        -1.0         0.0
2020-03-17  80.48  70.26  83.1490  83.8546    -0.7056     0.0         0.0        -1.0
2020-05-01  75.61  76.29  77.8160  77.7888     0.0272     1.0         1.0         0.0
2020-05-04  75.80  75.57  78.1285  77.5172     0.6113     1.0         0.0         1.0

List the signal change and entry/exit points for DDOG
            close   open   fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  38.10  37.51  38.27200  35.9962    2.27580     1.0         1.0         0.0
2019-12-20  38.51  37.71  38.19600  36.0544    2.14160     1.0         0.0         1.0
2020-03-16  28.96  32.00  42.18025  42.9096   -0.72935     0.0        -1.0         0.0
2020-03-17  34.12  29.53  41.53225  42.8436   -1.31135     0.0         0.0        -1.0
2020-04-29  44.65  43.85  39.03650  39.0119    0.02460     1.0         1.0         0.0
2020-04-30  45.12  44.93  39.54850  38.9683    0.58020     1.0         0.0         1.0

List the signal change and entry/exit points for DG
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-02-06  155.47  157.76  155.7215  155.5490     0.1725     1.0         1.0         0.0
2020-02-07  154.97  155.30  155.8410  155.4500     0.3910     1.0         0.0         1.0
2020-03-19  143.00  149.17  155.4610  156.1896    -0.7286     0.0        -1.0         0.0
2020-03-20  140.13  142.39  154.1235  155.9612    -1.8377     0.0         0.0        -1.0
2020-04-16  180.13  178.17  157.2350  157.1586     0.0764     1.0         1.0         0.0
2020-04-17  182.11  180.25  159.1905  157.6556     1.5349     1.0         0.0         1.0

List the signal change and entry/exit points for DHR
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  150.44  150.93  147.6805  141.5832     6.0973     1.0         1.0         0.0
2019-12-20  152.85  151.06  148.1640  141.8650     6.2990     1.0         0.0         1.0
2020-03-04  155.98  150.58  158.2640  158.6242    -0.3602     0.0        -1.0         0.0
2020-03-05  149.47  152.98  157.5930  158.5566    -0.9636     0.0         0.0        -1.0
2020-04-23  160.65  161.35  146.0380  145.5876     0.4504     1.0         1.0         0.0
2020-04-24  165.07  161.59  147.3585  145.6124     1.7461     1.0         0.0         1.0

List the signal change and entry/exit points for DOCU
             close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19   73.38  73.41  72.2005  68.7286     3.4719     1.0         1.0         0.0
2019-12-20   74.18  74.21  72.4125  68.8694     3.5431     1.0         0.0         1.0
2020-03-24   85.00  88.00  80.5715  80.5748    -0.0033     0.0        -1.0         0.0
2020-03-25   81.37  85.00  80.4610  80.7192    -0.2582     0.0         0.0        -1.0
2020-04-14   98.43  95.69  85.2210  84.3528     0.8682     1.0         1.0         0.0
2020-04-15  100.53  97.93  86.7005  84.7508     1.9497     1.0         0.0         1.0

List the signal change and entry/exit points for DPZ
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  292.00  285.92  289.8095  277.6082    12.2013     1.0         1.0         0.0
2019-12-20  292.00  293.07  290.2070  278.3528    11.8542     1.0         0.0         1.0
2020-01-28  284.18  283.07  288.6090  288.8298    -0.2208     0.0        -1.0         0.0
2020-01-29  285.47  285.10  288.2200  288.9660    -0.7460     0.0         0.0        -1.0
2020-02-21  371.96  366.01  291.3065  290.6252     0.6813     1.0         1.0         0.0
2020-02-24  363.01  355.51  295.2020  292.1806     3.0214     1.0         0.0         1.0

List the signal change and entry/exit points for DXCM
             close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  216.33  219.08  219.95600  190.9642   28.99180     1.0         1.0         0.0
2019-12-20  213.42  217.19  219.68650  192.1434   27.54310     1.0         0.0         1.0
2020-03-24  236.21  216.77  249.79850  250.5336   -0.73510     0.0        -1.0         0.0
2020-03-25  239.33  239.67  247.85250  250.6034   -2.75090     0.0         0.0        -1.0
2020-04-17  323.40  310.87  263.31575  262.4381    0.87765     1.0         1.0         0.0
2020-04-20  323.27  322.87  269.00425  264.1235    4.88075     1.0         0.0         1.0

List the signal change and entry/exit points for EA
             close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  107.34  107.00  102.46625   98.7485    3.71775     1.0         1.0         0.0
2019-12-20  107.95  108.02  102.91325   99.0569    3.85635     1.0         0.0         1.0
2020-02-26  106.54  106.36  108.60900  108.8882   -0.27920     0.0        -1.0         0.0
2020-02-27  102.74  104.35  108.13550  108.8520   -0.71650     0.0         0.0        -1.0
2020-04-20  115.41  114.84  104.17100  103.7700    0.40100     1.0         1.0         0.0
2020-04-21  113.27  114.68  105.06100  103.8536    1.20740     1.0         0.0         1.0

List the signal change and entry/exit points for EBAY
            close    open   fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-02  36.30  36.410  35.58650  35.5810    0.00550     1.0         1.0         0.0
2020-01-03  35.96  35.920  35.63600  35.5214    0.11460     1.0         0.0         1.0
2020-01-31  33.56  34.860  35.38225  35.4395   -0.05725     0.0        -1.0         0.0
2020-02-03  34.39  33.750  35.30375  35.4261   -0.12235     0.0         0.0        -1.0
2020-02-06  38.00  37.730  35.58075  35.5784    0.00235     1.0         1.0         0.0
2020-02-07  36.20  35.830  35.63175  35.5854    0.04635     1.0         0.0         1.0
2020-03-17  33.28  32.760  35.86100  35.8967   -0.03570     0.0        -1.0         0.0
2020-03-18  31.30  31.620  35.54950  35.8071   -0.25760     0.0         0.0        -1.0
2020-04-27  39.63  40.035  34.50125  34.2891    0.21215     1.0         1.0         0.0
2020-04-28  39.08  39.590  34.89575  34.3079    0.58785     1.0         0.0         1.0

List the signal change and entry/exit points for EBS
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-15  54.96  54.94  54.5070  54.3822     0.1248     1.0         1.0         0.0
2020-01-16  56.04  55.00  54.6750  54.3718     0.3032     1.0         0.0         1.0
2020-03-19  53.10  55.29  58.3725  58.5034    -0.1309     0.0        -1.0         0.0
2020-03-20  49.34  53.86  57.5425  58.3890    -0.8465     0.0         0.0        -1.0
2020-04-21  66.96  68.90  60.0820  59.5012     0.5808     1.0         1.0         0.0
2020-04-22  66.60  67.89  60.6160  59.5964     1.0196     1.0         0.0         1.0
2020-06-23  74.35  73.69  76.6550  76.7914    -0.1364     0.0        -1.0         0.0
2020-06-24  73.15  74.90  76.1060  76.9846    -0.8786     0.0         0.0        -1.0

List the signal change and entry/exit points for EQIX
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  575.92  566.52  559.0880  558.0554     1.0326     1.0         1.0         0.0
2019-12-20  577.71  581.85  559.9650  558.1656     1.7994     1.0         0.0         1.0
2020-03-19  550.00  571.89  602.2160  604.2955    -2.0795     0.0        -1.0         0.0
2020-03-20  506.52  549.75  594.7425  602.7499    -8.0074     0.0         0.0        -1.0
2020-04-16  682.74  659.03  613.7225  612.9719     0.7506     1.0         1.0         0.0
2020-04-17  694.95  681.85  620.9700  614.8457     6.1243     1.0         0.0         1.0

List the signal change and entry/exit points for ETSY
             close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-08  45.005  45.84  43.8310  43.6802     0.1508     1.0         1.0         0.0
2020-01-09  46.430  45.30  44.1270  43.4624     0.6646     1.0         0.0         1.0
2020-03-23  33.030  31.60  50.0375  50.3856    -0.3481     0.0        -1.0         0.0
2020-03-24  38.130  35.26  49.4495  50.2256    -0.7761     0.0         0.0        -1.0
2020-04-23  62.850  63.34  50.3755  50.2396     0.1359     1.0         1.0         0.0
2020-04-24  66.190  64.05  51.5910  50.5184     1.0726     1.0         0.0         1.0

List the signal change and entry/exit points for EVBG
              close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19   79.310   79.00   83.33450   78.3172    5.01730     1.0         1.0         0.0
2019-12-20   80.700   79.51   83.12800   78.5836    4.54440     1.0         0.0         1.0
2020-01-07   82.990   82.37   80.32500   80.4674   -0.14240     0.0        -1.0         0.0
2020-01-08   82.950   82.91   80.25350   80.7090   -0.45550     0.0         0.0        -1.0
2020-01-22   88.710   88.46   83.22400   83.2074    0.01660     1.0         1.0         0.0
2020-01-23   87.125   88.75   83.58825   83.3889    0.19935     1.0         0.0         1.0
2020-06-29  135.190  142.88  134.76000  135.4970   -0.73700     0.0        -1.0         0.0
2020-06-30  138.360  136.41  134.27900  135.7700   -1.49100     0.0         0.0        -1.0

List the signal change and entry/exit points for FSLY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-15  22.76  22.16  20.5990  20.5376     0.0614     1.0         1.0         0.0
2020-01-16  24.08  22.60  20.8560  20.5984     0.2576     1.0         0.0         1.0
2020-03-02  20.49  20.04  21.8715  21.8786    -0.0071     0.0        -1.0         0.0
2020-03-03  20.25  21.10  21.7625  21.9086    -0.1461     0.0         0.0        -1.0
2020-04-17  23.19  23.64  19.7955  19.6570     0.1385     1.0         1.0         0.0
2020-04-20  23.98  23.19  20.1090  19.7024     0.4066     1.0         0.0         1.0

List the signal change and entry/exit points for GILD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  65.29  65.91  66.5140  65.3838     1.1302     1.0         1.0         0.0
2019-12-20  66.85  65.59  66.5700  65.4556     1.1144     1.0         0.0         1.0
2020-01-14  64.20  64.41  65.6055  65.6890    -0.0835     0.0        -1.0         0.0
2020-01-15  64.10  64.07  65.5045  65.6778    -0.1733     0.0         0.0        -1.0
2020-02-18  67.01  67.56  65.7325  65.7048     0.0277     1.0         1.0         0.0
2020-02-19  67.35  67.20  65.9685  65.7332     0.2353     1.0         0.0         1.0
2020-05-29  77.83  75.77  76.5135  76.7346    -0.2211     0.0        -1.0         0.0
2020-06-01  75.16  75.47  76.2740  76.6668    -0.3928     0.0         0.0        -1.0

List the signal change and entry/exit points for GIS
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  53.20  53.48  52.8830  52.4662     0.4168     1.0         1.0         0.0
2019-12-20  53.28  53.75  52.9300  52.4396     0.4904     1.0         0.0         1.0
2020-01-09  52.38  52.26  52.5455  52.5462    -0.0007     0.0        -1.0         0.0
2020-01-10  52.25  52.49  52.5790  52.5820    -0.0030     0.0         0.0        -1.0
2020-01-13  53.06  52.37  52.6490  52.6290     0.0200     1.0         1.0         0.0
2020-01-14  53.00  53.10  52.7190  52.6718     0.0472     1.0         0.0         1.0
2020-02-26  52.14  52.76  52.9130  52.9536    -0.0406     0.0        -1.0         0.0
2020-02-27  50.14  51.81  52.7685  52.9244    -0.1559     0.0         0.0        -1.0
2020-03-11  52.87  52.86  52.9495  52.9420     0.0075     1.0         1.0         0.0
2020-03-12  50.00  49.20  52.8030  52.8872    -0.0842     0.0        -1.0         1.0
2020-03-13  53.48  52.95  52.8275  52.8856    -0.0581     0.0         0.0        -1.0
2020-03-17  59.67  53.96  53.1375  53.0652     0.0723     1.0         1.0         0.0
2020-03-18  57.75  57.65  53.3630  53.1684     0.1946     1.0         0.0         1.0
2020-03-23  47.28  52.34  52.9910  53.1032    -0.1122     0.0        -1.0         0.0
2020-03-24  48.23  49.03  52.7760  53.0228    -0.2468     0.0         0.0        -1.0
2020-03-31  52.77  53.99  52.8760  52.8096     0.0664     1.0         1.0         0.0
2020-04-01  53.12  51.74  52.8235  52.7852     0.0383     1.0         0.0         1.0

List the signal change and entry/exit points for GOLD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  17.71  17.93  17.1185  16.9598     0.1587     1.0         1.0         0.0
2019-12-20  17.45  17.65  17.1590  16.9506     0.2084     1.0         0.0         1.0
2020-03-23  16.93  16.40  18.7265  18.7534    -0.0269     0.0        -1.0         0.0
2020-03-24  19.50  18.78  18.6390  18.7864    -0.1474     0.0         0.0        -1.0
2020-04-14  24.43  24.30  19.4385  19.4286     0.0099     1.0         1.0         0.0
2020-04-15  24.47  23.74  19.7765  19.5524     0.2241     1.0         0.0         1.0
2020-06-12  24.07  24.65  24.9895  25.0286    -0.0391     0.0        -1.0         0.0
2020-06-15  24.74  23.50  24.8245  25.1264    -0.3019     0.0         0.0        -1.0

List the signal change and entry/exit points for GOOG
              close     open    fast_ma    slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  1356.04  1351.82  1328.2830  1295.8210    32.4620     1.0         1.0         0.0
2019-12-20  1349.59  1363.35  1330.6950  1298.6394    32.0556     1.0         0.0         1.0
2020-03-09  1215.56  1205.30  1421.5715  1426.4662    -4.8947     0.0        -1.0         0.0
2020-03-10  1280.39  1260.00  1410.1570  1424.8660   -14.7090     0.0         0.0        -1.0
2020-04-30  1348.66  1324.88  1240.5665  1238.5104     2.0561     1.0         1.0         0.0
2020-05-01  1320.61  1328.50  1250.5550  1234.5596    15.9954     1.0         0.0         1.0

List the signal change and entry/exit points for HD
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-21  232.95  231.53  222.5120  222.1890     0.3230     1.0         1.0         0.0
2020-01-22  232.90  233.79  223.0975  222.1882     0.9093     1.0         0.0         1.0
2020-03-13  205.67  200.45  229.3745  230.1136    -0.7391     0.0        -1.0         0.0
2020-03-16  164.96  181.97  225.3710  229.0196    -3.6486     0.0         0.0        -1.0
2020-05-01  218.57  216.77  204.6655  203.3212     1.3443     1.0         1.0         0.0
2020-05-04  221.84  216.68  206.8225  202.8512     3.9713     1.0         0.0         1.0

List the signal change and entry/exit points for HRL
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  44.70  44.62  44.7030  42.7164     1.9866     1.0         1.0         0.0
2019-12-20  44.96  45.04  44.8150  42.7822     2.0328     1.0         0.0         1.0
2020-03-04  45.05  43.84  45.8280  45.8462    -0.0182     0.0        -1.0         0.0
2020-03-05  43.80  44.26  45.6485  45.8230    -0.1745     0.0         0.0        -1.0
2020-04-09  47.54  46.76  46.0090  45.6826     0.3264     1.0         1.0         0.0
2020-04-13  47.10  47.62  46.2440  45.6670     0.5770     1.0         0.0         1.0
2020-05-27  46.93  45.67  47.1720  47.1810    -0.0090     0.0        -1.0         0.0
2020-05-28  47.88  47.40  47.1860  47.1680     0.0180     1.0         1.0        -1.0
2020-05-29  48.83  48.00  47.2850  47.1792     0.1058     1.0         0.0         1.0
2020-06-11  46.84  47.59  47.6775  47.7300    -0.0525     0.0        -1.0         0.0
2020-06-12  46.67  47.17  47.6320  47.7364    -0.1044     0.0         0.0        -1.0
2020-06-19  48.55  48.78  47.7390  47.7326     0.0064     1.0         1.0         0.0
2020-06-22  48.39  48.48  47.8120  47.7496     0.0624     1.0         0.0         1.0

List the signal change and entry/exit points for JNJ
             close    open   fast_ma    slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  145.35  143.89  139.8010  134.76988    5.03112     1.0         1.0         0.0
2019-12-20  146.06  146.88  140.2820  135.10988    5.17212     1.0         0.0         1.0
2020-03-04  143.48  137.68  146.8940  147.09120   -0.19720     0.0        -1.0         0.0
2020-03-05  142.01  140.80  146.2950  147.01020   -0.71520     0.0         0.0        -1.0
2020-04-22  152.99  152.81  139.0310  138.73580    0.29520     1.0         1.0         0.0
2020-04-23  155.51  154.25  140.8365  138.80620    2.03030     1.0         0.0         1.0
2020-06-12  142.15  142.84  146.7790  147.03800   -0.25900     0.0        -1.0         0.0
2020-06-15  141.25  141.00  146.3195  147.20000   -0.88050     0.0         0.0        -1.0

List the signal change and entry/exit points for KR
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  28.76  28.40  27.6770  26.3980     1.2790     1.0         1.0         0.0
2019-12-20  29.00  28.98  27.7920  26.5012     1.2908     1.0         0.0         1.0
2020-02-05  28.08  27.48  28.0690  28.1132    -0.0442     0.0        -1.0         0.0
2020-02-06  28.05  28.23  28.0505  28.1332    -0.0827     0.0         0.0        -1.0
2020-02-27  28.36  28.55  28.5695  28.5490     0.0205     1.0         1.0         0.0
2020-02-28  28.13  28.00  28.5985  28.5454     0.0531     1.0         0.0         1.0

List the signal change and entry/exit points for LLY
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  130.85  129.08  120.3070  114.8540     5.4530     1.0         1.0         0.0
2019-12-20  132.43  132.49  121.1910  115.3642     5.8268     1.0         0.0         1.0
2020-03-09  135.72  134.02  138.2670  138.3374    -0.0704     0.0        -1.0         0.0
2020-03-10  141.19  139.23  138.0510  138.5384    -0.4874     0.0         0.0        -1.0
2020-04-17  157.29  155.42  139.2165  138.7748     0.4417     1.0         1.0         0.0
2020-04-20  157.79  156.63  140.9860  138.9846     2.0014     1.0         0.0         1.0
2020-06-11  144.08  151.85  151.9140  152.2258    -0.3118     0.0        -1.0         0.0
2020-06-12  143.54  145.54  151.1720  152.3682    -1.1962     0.0         0.0        -1.0
2020-06-30  164.18  163.11  155.2515  155.2046     0.0469     1.0         1.0         0.0
2020-07-01  163.34  164.32  155.7920  155.4180     0.3740     1.0         0.0         1.0

List the signal change and entry/exit points for LOGI
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  46.03  46.15  43.9480  42.4174     1.5306     1.0         1.0         0.0
2019-12-20  46.34  46.33  44.1255  42.5352     1.5903     1.0         0.0         1.0
2020-02-18  43.09  42.50  45.9565  46.1154    -0.1589     0.0        -1.0         0.0
2020-02-19  43.04  42.95  45.7190  46.1090    -0.3900     0.0         0.0        -1.0
2020-04-13  44.35  44.73  41.8735  41.7668     0.1067     1.0         1.0         0.0
2020-04-14  45.88  45.63  42.4730  41.7918     0.6812     1.0         0.0         1.0

List the signal change and entry/exit points for LVGO
            close   open   fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  26.59  26.08  27.36900  24.5318    2.83720     1.0         1.0         0.0
2019-12-20  26.26  26.77  27.26900  24.6798    2.58920     1.0         0.0         1.0
2020-01-09  26.30  26.30  25.83050  25.8726   -0.04210     0.0        -1.0         0.0
2020-01-10  27.00  26.65  25.80350  25.9758   -0.17230     0.0         0.0        -1.0
2020-01-27  25.72  26.30  27.06925  27.0443    0.02495     1.0         1.0         0.0
2020-01-28  25.87  26.00  27.15075  27.0275    0.12325     1.0         0.0         1.0
2020-02-13  27.09  27.00  26.34900  26.4562   -0.10720     0.0        -1.0         0.0
2020-02-14  27.17  27.17  26.22175  26.4644   -0.24265     0.0         0.0        -1.0
2020-03-05  28.42  25.72  26.47250  26.4388    0.03370     1.0         1.0         0.0
2020-03-06  27.84  27.40  26.58650  26.4642    0.12230     1.0         0.0         1.0
2020-03-12  24.21  23.35  26.46600  26.4998   -0.03380     0.0        -1.0         0.0
2020-03-13  25.27  25.87  26.37500  26.5040   -0.12900     0.0         0.0        -1.0
2020-04-13  35.27  34.02  26.36150  26.1819    0.17960     1.0         1.0         0.0
2020-04-14  37.45  36.25  27.22550  26.4477    0.77780     1.0         0.0         1.0

List the signal change and entry/exit points for MASI
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  157.22  159.34  155.6695  149.8120     5.8575     1.0         1.0         0.0
2019-12-20  158.58  158.51  155.7980  150.0920     5.7060     1.0         0.0         1.0
2020-03-20  155.10  165.00  173.1275  173.3750    -0.2475     0.0        -1.0         0.0
2020-03-23  148.38  154.30  171.8825  173.0900    -1.2075     0.0         0.0        -1.0
2020-04-16  205.03  203.20  177.8760  177.1876     0.6884     1.0         1.0         0.0
2020-04-17  199.70  208.59  179.6415  177.6762     1.9653     1.0         0.0         1.0
2020-06-24  222.07  228.92  225.2635  225.6360    -0.3725     0.0        -1.0         0.0
2020-06-25  220.55  222.44  224.5730  226.0344    -1.4614     0.0         0.0        -1.0

List the signal change and entry/exit points for MDLZ
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  55.15  54.77  53.3310  53.0920     0.2390     1.0         1.0         0.0
2019-12-20  55.40  55.11  53.4975  53.0918     0.4057     1.0         0.0         1.0
2020-03-13  50.92  49.64  55.7925  55.9292    -0.1367     0.0        -1.0         0.0
2020-03-16  45.10  46.41  55.0635  55.7446    -0.6811     0.0         0.0        -1.0
2020-04-30  51.44  50.53  52.0475  51.7760     0.2715     1.0         1.0         0.0
2020-05-01  50.70  51.14  52.0635  51.6092     0.4543     1.0         0.0         1.0
2020-05-29  52.12  51.58  50.2785  50.3338    -0.0553     0.0        -1.0         0.0
2020-06-01  52.25  52.03  50.3560  50.4694    -0.1134     0.0         0.0        -1.0
2020-06-17  52.71  52.44  51.5010  51.4228     0.0782     1.0         1.0         0.0
2020-06-18  53.09  52.37  51.6680  51.4486     0.2194     1.0         0.0         1.0

List the signal change and entry/exit points for MKC
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  168.31  167.23  169.1150  164.7526     4.3624     1.0         1.0         0.0
2019-12-20  168.25  169.19  169.2060  164.8038     4.4022     1.0         0.0         1.0
2020-01-29  167.41  165.00  168.5870  168.6280    -0.0410     0.0        -1.0         0.0
2020-01-30  165.51  167.74  168.3760  168.6906    -0.3146     0.0         0.0        -1.0
2020-04-23  151.62  151.87  148.1875  147.3720     0.8155     1.0         1.0         0.0
2020-04-24  154.26  151.99  149.3185  147.1564     2.1621     1.0         0.0         1.0

List the signal change and entry/exit points for MKTX
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  377.57  372.65  384.8070  369.4070    15.4000     1.0         1.0         0.0
2019-12-20  376.32  378.50  383.9285  369.7516    14.1769     1.0         0.0         1.0
2020-01-06  374.08  379.70  374.4815  374.9188    -0.4373     0.0        -1.0         0.0
2020-01-07  375.25  372.54  374.4490  375.4346    -0.9856     0.0         0.0        -1.0
2020-04-13  385.79  400.00  346.4025  345.6918     0.7107     1.0         1.0         0.0
2020-04-14  397.71  397.74  350.7235  346.5624     4.1611     1.0         0.0         1.0

List the signal change and entry/exit points for MRNA
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  19.41  18.58  19.6110  17.8567     1.7543     1.0         1.0         0.0
2019-12-20  19.83  19.40  19.5925  17.9701     1.6224     1.0         0.0         1.0

List the signal change and entry/exit points for MRVL
             close   open   fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-08  26.050  26.24  26.03800  25.9850    0.05300     1.0         1.0         0.0
2020-01-09  26.100  26.47  26.15900  26.0040    0.15500     1.0         0.0         1.0
2020-02-14  25.120  25.35  25.76400  25.8740   -0.11000     0.0        -1.0         0.0
2020-02-18  24.790  24.71  25.57900  25.8914   -0.31240     0.0         0.0        -1.0
2020-04-17  25.955  26.33  23.11675  22.8450    0.27175     1.0         1.0         0.0
2020-04-20  26.230  25.65  23.49475  22.8546    0.64015     1.0         0.0         1.0

List the signal change and entry/exit points for MSFT
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  155.71  154.00  151.9340  146.7937     5.1403     1.0         1.0         0.0
2019-12-20  157.41  157.35  152.3305  147.1599     5.1706     1.0         0.0         1.0
2020-03-13  158.83  147.50  167.5470  168.7680    -1.2210     0.0        -1.0         0.0
2020-03-16  135.42  140.00  165.0505  168.2640    -3.2135     0.0         0.0        -1.0
2020-04-22  173.52  171.39  163.7015  163.2920     0.4095     1.0         1.0         0.0
2020-04-23  171.42  174.11  164.9265  163.0316     1.8949     1.0         0.0         1.0

List the signal change and entry/exit points for NEM
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  40.88  41.00  39.6085  38.7226     0.8859     1.0         1.0         0.0
2019-12-20  40.93  40.94  39.7445  38.7624     0.9821     1.0         0.0         1.0
2020-04-01  46.47  45.04  45.5195  45.7124    -0.1929     0.0        -1.0         0.0
2020-04-02  48.23  47.07  45.3270  45.8014    -0.4744     0.0         0.0        -1.0
2020-04-13  59.77  57.22  47.1450  46.7692     0.3758     1.0         1.0         0.0
2020-04-14  59.89  60.08  48.1030  47.0658     1.0372     1.0         0.0         1.0
2020-06-15  56.85  54.09  59.3220  59.9150    -0.5930     0.0        -1.0         0.0
2020-06-16  55.95  56.90  58.8065  60.0910    -1.2845     0.0         0.0        -1.0

List the signal change and entry/exit points for NET
            close  open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  18.00  17.4  18.1835  16.9784     1.2051     1.0         1.0         0.0
2019-12-20  18.12  18.3  18.2215  17.0142     1.2073     1.0         0.0         1.0

List the signal change and entry/exit points for NFLX
             close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  332.22  324.50  308.78400  295.4354   13.34860     1.0         1.0         0.0
2019-12-20  336.90  335.00  310.04450  296.5638   13.48070     1.0         0.0         1.0
2020-03-19  332.03  324.33  354.11875  355.0503   -0.93155     0.0        -1.0         0.0
2020-03-20  332.83  342.31  351.75675  354.9217   -3.16495     0.0         0.0        -1.0
2020-04-15  426.75  413.00  366.69500  365.7543    0.94070     1.0         1.0         0.0
2020-04-16  439.17  437.00  372.88000  367.1575    5.72250     1.0         0.0         1.0
2020-06-19  453.72  449.12  427.54600  427.8180   -0.27200     0.0        -1.0         0.0
2020-06-22  468.04  455.01  429.48200  429.7644   -0.28240     0.0         0.0        -1.0
2020-06-23  466.26  466.50  432.05650  431.1552    0.90130     1.0         1.0         0.0
2020-06-24  457.85  468.54  433.95450  432.0412    1.91330     1.0         0.0         1.0

List the signal change and entry/exit points for NVDA
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  235.46  230.90  217.5730  208.0490     9.5240     1.0         1.0         0.0
2019-12-20  239.37  238.13  219.0325  209.1758     9.8567     1.0         0.0         1.0
2020-03-19  212.97  201.96  251.2740  254.8303    -3.5563     0.0        -1.0         0.0
2020-03-20  205.75  219.00  246.8580  254.1377    -7.2797     0.0         0.0        -1.0
2020-04-20  287.05  287.24  262.7570  260.4380     2.3190     1.0         1.0         0.0
2020-04-21  269.51  282.31  265.5980  260.7964     4.8016     1.0         0.0         1.0

List the signal change and entry/exit points for OKTA
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  115.75  115.83  121.4995  115.1026     6.3969     1.0         1.0         0.0
2019-12-20  116.22  116.25  120.9165  115.1356     5.7809     1.0         0.0         1.0
2020-03-12  106.08  104.62  127.8690  127.9890    -0.1200     0.0        -1.0         0.0
2020-03-13  107.29  110.30  126.4680  127.8274    -1.3594     0.0         0.0        -1.0
2020-04-17  148.09  148.00  127.3220  126.1160     1.2060     1.0         1.0         0.0
2020-04-20  152.60  147.49  129.1795  126.5662     2.6133     1.0         0.0         1.0

List the signal change and entry/exit points for PANW
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  229.10  229.50  229.8615  228.8208     1.0407     1.0         1.0         0.0
2019-12-20  230.01  229.87  229.0250  229.2350    -0.2100     0.0        -1.0         1.0
2019-12-23  231.33  230.06  228.2480  229.6532    -1.4052     0.0         0.0        -1.0
2020-01-15  240.70  240.57  235.2040  234.8136     0.3904     1.0         1.0         0.0
2020-01-16  243.26  241.64  235.8335  234.9984     0.8351     1.0         0.0         1.0
2020-02-27  187.56  184.50  235.7960  236.4860    -0.6900     0.0        -1.0         0.0
2020-02-28  184.62  181.76  233.1270  235.5846    -2.4576     0.0         0.0        -1.0
2020-04-27  196.88  196.29  180.8360  180.7562     0.0798     1.0         1.0         0.0
2020-04-28  193.55  200.00  182.1900  179.6822     2.5078     1.0         0.0         1.0

List the signal change and entry/exit points for PEP
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  136.47  136.22  136.1455  135.7498     0.3957     1.0         1.0         0.0
2019-12-20  137.92  137.41  136.3460  135.7504     0.5956     1.0         0.0         1.0
2020-03-11  129.75  130.58  140.0380  140.1751    -0.1371     0.0        -1.0         0.0
2020-03-12  115.34  122.10  138.5010  139.7457    -1.2447     0.0         0.0        -1.0
2020-04-27  134.46  134.42  130.7365  130.4194     0.3171     1.0         1.0         0.0
2020-04-28  136.32  136.78  131.2785  130.2060     1.0725     1.0         0.0         1.0
2020-06-12  129.00  129.15  131.8575  132.2560    -0.3985     0.0        -1.0         0.0
2020-06-15  130.48  128.29  131.5840  132.3884    -0.8044     0.0         0.0        -1.0

List the signal change and entry/exit points for PFE
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  38.97  39.00  38.4390  37.5926     0.8464     1.0         1.0         0.0
2019-12-20  39.23  39.35  38.5135  37.6614     0.8521     1.0         0.0         1.0
2020-02-12  37.74  38.09  38.8180  38.8440    -0.0260     0.0        -1.0         0.0
2020-02-13  36.93  37.58  38.6310  38.8168    -0.1858     0.0         0.0        -1.0
2020-04-22  36.25  36.96  34.1215  33.9658     0.1557     1.0         1.0         0.0
2020-04-23  36.69  36.28  34.4685  33.9378     0.5307     1.0         0.0         1.0
2020-06-15  33.36  33.30  36.4160  36.5972    -0.1812     0.0        -1.0         0.0
2020-06-16  33.40  33.59  36.1825  36.5924    -0.4099     0.0         0.0        -1.0

List the signal change and entry/exit points for PG
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  124.92  124.16  123.4935  121.9596     1.5339     1.0         1.0         0.0
2019-12-20  125.36  126.15  123.7445  122.0280     1.7165     1.0         0.0         1.0
2020-02-27  113.50  119.12  124.4115  124.6514    -0.2399     0.0        -1.0         0.0
2020-02-28  113.23  109.46  123.7755  124.4048    -0.6293     0.0         0.0        -1.0
2020-04-24  118.78  119.10  116.8250  116.3832     0.4418     1.0         1.0         0.0
2020-04-27  117.45  119.19  117.1890  116.2330     0.9560     1.0         0.0         1.0
2020-06-01  117.25  116.00  114.3250  114.4162    -0.0912     0.0        -1.0         0.0
2020-06-02  118.06  117.07  114.4395  114.7288    -0.2893     0.0         0.0        -1.0
2020-06-19  118.92  120.49  116.9085  116.7974     0.1111     1.0         1.0         0.0
2020-06-22  117.75  118.78  117.1660  116.8592     0.3068     1.0         0.0         1.0

List the signal change and entry/exit points for PLD
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  87.31  87.51  90.1740  89.1624     1.0116     1.0         1.0         0.0
2019-12-20  88.03  87.72  90.0330  89.2068     0.8262     1.0         0.0         1.0
2019-12-30  88.86  88.50  89.2180  89.2466    -0.0286     0.0        -1.0         0.0
2019-12-31  89.14  88.86  89.1745  89.2372    -0.0627     0.0         0.0        -1.0
2020-01-21  95.57  94.15  89.9525  89.7886     0.1639     1.0         1.0         0.0
2020-01-22  93.94  95.17  90.2480  89.9222     0.3258     1.0         0.0         1.0
2020-03-10  80.86  80.36  91.8750  92.1104    -0.2354     0.0        -1.0         0.0
2020-03-11  73.69  78.07  90.7490  91.8108    -1.0618     0.0         0.0        -1.0
2020-04-23  86.75  88.05  83.7100  83.4578     0.2522     1.0         1.0         0.0
2020-04-24  89.04  87.09  84.2775  83.3028     0.9747     1.0         0.0         1.0

List the signal change and entry/exit points for PRGO
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-20  54.72  54.91  52.3665  52.1240     0.2425     1.0         1.0         0.0
2019-12-23  53.94  53.75  52.6130  52.1340     0.4790     1.0         0.0         1.0
2020-03-11  46.04  48.05  55.5690  55.8798    -0.3108     0.0        -1.0         0.0
2020-03-12  40.66  42.66  54.6145  55.6626    -1.0481     0.0         0.0        -1.0
2020-04-30  53.30  52.24  50.2200  50.0450     0.1750     1.0         1.0         0.0
2020-05-01  52.68  53.12  50.7140  49.9064     0.8076     1.0         0.0         1.0

List the signal change and entry/exit points for PTON
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  31.93  31.74  32.2825  27.2989     4.9836     1.0         1.0         0.0
2019-12-20  29.99  32.00  32.2920  27.4359     4.8561     1.0         0.0         1.0
2020-01-16  30.83  31.10  29.3900  29.5600    -0.1700     0.0        -1.0         0.0
2020-01-17  31.70  31.00  29.3805  29.7392    -0.3587     0.0         0.0        -1.0
2020-02-11  28.65  28.75  30.9360  30.8764     0.0596     1.0         1.0         0.0
2020-02-12  28.34  28.84  30.8685  30.7386     0.1299     1.0         0.0         1.0
2020-02-19  27.10  27.30  30.1335  30.2606    -0.1271     0.0        -1.0         0.0
2020-02-20  26.98  27.10  29.9485  30.1476    -0.1991     0.0         0.0        -1.0
2020-04-15  35.61  32.13  27.3515  26.9213     0.4302     1.0         1.0         0.0
2020-04-16  36.35  34.50  27.8795  26.9789     0.9006     1.0         0.0         1.0

List the signal change and entry/exit points for PYPL
             close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  108.88  107.80  105.87150  104.0264    1.84510     1.0         1.0         0.0
2019-12-20  108.75  109.28  106.18150  104.1906    1.99090     1.0         0.0         1.0
2020-03-10  109.74  105.30  114.62000  114.6382   -0.01820     0.0        -1.0         0.0
2020-03-11  103.90  106.65  113.87300  114.5282   -0.65520     0.0         0.0        -1.0
2020-04-28  116.14  121.66  106.83725  105.8215    1.01575     1.0         1.0         0.0
2020-04-29  123.58  119.30  108.22925  105.8477    2.38155     1.0         0.0         1.0

List the signal change and entry/exit points for REGN
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  372.55  371.95  368.6280  338.6928    29.9352     1.0         1.0         0.0
2019-12-20  375.62  374.94  369.8700  340.2380    29.6320     1.0         0.0         1.0
2020-01-30  336.18  335.68  367.3575  367.4458    -0.0883     0.0        -1.0         0.0
2020-01-31  337.94  333.17  365.5870  367.4008    -1.8138     0.0         0.0        -1.0
2020-02-24  425.38  395.54  377.5810  375.4932     2.0878     1.0         1.0         0.0
2020-02-25  442.35  437.25  382.7275  376.8696     5.8579     1.0         0.0         1.0

List the signal change and entry/exit points for RMD
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  156.04  156.65  150.8255  144.2916     6.5339     1.0         1.0         0.0
2019-12-20  155.93  157.36  151.3050  144.8008     6.5042     1.0         0.0         1.0
2020-03-16  137.93  137.49  163.1890  163.4670    -0.2780     0.0        -1.0         0.0
2020-03-17  161.43  140.30  162.5205  163.5898    -1.0693     0.0         0.0        -1.0
2020-04-27  162.77  163.11  157.3205  156.6202     0.7003     1.0         1.0         0.0
2020-04-28  158.22  164.00  157.5210  156.2526     1.2684     1.0         0.0         1.0

List the signal change and entry/exit points for RNG
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  167.49  166.35  166.9270  166.3058     0.6212     1.0         1.0         0.0
2019-12-20  169.32  168.04  166.9055  166.2032     0.7023     1.0         0.0         1.0
2020-03-20  183.86  190.48  206.4340  208.1486    -1.7146     0.0        -1.0         0.0
2020-03-23  191.59  184.49  204.3060  208.2930    -3.9870     0.0         0.0        -1.0
2020-04-20  253.11  236.27  218.2995  216.7270     1.5725     1.0         1.0         0.0
2020-04-21  234.58  251.05  220.4490  217.2692     3.1798     1.0         0.0         1.0

List the signal change and entry/exit points for SHOP
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  393.06  395.59  359.1680  332.5438    26.6242     1.0         1.0         0.0
2019-12-20  390.07  393.05  362.8680  333.8558    29.0122     1.0         0.0         1.0
2020-03-17  355.09  330.02  455.7310  463.0472    -7.3162     0.0        -1.0         0.0
2020-03-18  336.83  326.34  445.4120  461.5172   -16.1052     0.0         0.0        -1.0
2020-04-22  626.56  615.99  462.6980  456.2792     6.4188     1.0         1.0         0.0
2020-04-23  620.49  631.30  471.3925  458.8340    12.5585     1.0         0.0         1.0

List the signal change and entry/exit points for SJM
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-28  106.27  107.08  104.9415  104.8448     0.0967     1.0         1.0         0.0
2020-01-29  105.18  106.17  105.0430  104.8586     0.1844     1.0         0.0         1.0
2020-03-25  105.19  105.42  107.2780  107.4496    -0.1716     0.0        -1.0         0.0
2020-03-26  103.47  105.03  107.1460  107.4310    -0.2850     0.0         0.0        -1.0
2020-04-08  114.13  113.67  108.4775  108.2274     0.2501     1.0         1.0         0.0
2020-04-09  112.75  113.33  109.1515  108.3788     0.7727     1.0         0.0         1.0
2020-06-03  114.59  115.73  113.2395  113.6130    -0.3735     0.0        -1.0         0.0
2020-06-04  109.10  109.51  112.9870  113.6804    -0.6934     0.0         0.0        -1.0

List the signal change and entry/exit points for SNY
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  50.43  49.98  47.6735  46.6142     1.0593     1.0         1.0         0.0
2019-12-20  50.55  50.28  47.8425  46.7284     1.1141     1.0         0.0         1.0
2020-02-14  49.93  50.04  49.6470  49.7932    -0.1462     0.0        -1.0         0.0
2020-02-18  51.14  50.35  49.6420  49.8838    -0.2418     0.0         0.0        -1.0
2020-04-27  50.63  51.02  46.2160  45.9494     0.2666     1.0         1.0         0.0
2020-04-28  49.87  49.89  46.4750  45.9482     0.5268     1.0         0.0         1.0

List the signal change and entry/exit points for SPGI
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  272.48  268.96  268.8265  260.4018     8.4247     1.0         1.0         0.0
2019-12-20  271.66  272.50  269.1900  260.8156     8.3744     1.0         0.0         1.0
2020-03-09  242.51  249.84  288.2130  289.1096    -0.8966     0.0        -1.0         0.0
2020-03-10  259.17  252.51  286.3435  288.8218    -2.4783     0.0         0.0        -1.0
2020-04-24  283.94  282.61  263.2645  260.9290     2.3355     1.0         1.0         0.0
2020-04-27  291.19  286.46  265.8365  260.7258     5.1107     1.0         0.0         1.0

List the signal change and entry/exit points for SPLK
              close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  150.140  149.36  146.05200  130.3268   15.72520     1.0         1.0         0.0
2019-12-20  150.960  150.15  147.25800  130.9830   16.27500     1.0         0.0         1.0
2020-03-10  132.280  132.27  156.59650  156.7817   -0.18520     0.0        -1.0         0.0
2020-03-11  120.740  128.00  154.22850  156.1663   -1.93780     0.0         0.0        -1.0
2020-05-04  134.920  132.45  130.39475  128.4235    1.97125     1.0         1.0         0.0
2020-05-05  143.615  140.86  131.65550  128.0948    3.56070     1.0         0.0         1.0

List the signal change and entry/exit points for SPOT
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  149.68  150.65  145.6980  138.5684     7.1296     1.0         1.0         0.0
2019-12-20  150.31  150.73  146.2605  139.3242     6.9363     1.0         0.0         1.0
2020-02-06  154.37  146.62  148.7875  148.8600    -0.0725     0.0        -1.0         0.0
2020-02-07  154.55  152.79  148.6280  149.1136    -0.4856     0.0         0.0        -1.0
2020-04-29  155.78  153.00  134.7670  133.9516     0.8154     1.0         1.0         0.0
2020-04-30  151.57  148.94  136.2650  134.1158     2.1492     1.0         0.0         1.0

List the signal change and entry/exit points for SQ
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  64.55  64.90  66.9515  64.3074     2.6441     1.0         1.0         0.0
2019-12-20  63.63  64.57  66.7620  64.3394     2.4226     1.0         0.0         1.0
2020-01-06  62.57  61.36  64.5520  64.6494    -0.0974     0.0        -1.0         0.0
2020-01-07  64.59  64.57  64.3825  64.7068    -0.3243     0.0         0.0        -1.0
2020-01-22  68.69  68.92  65.9775  65.9694     0.0081     1.0         1.0         0.0
2020-01-23  69.29  68.86  66.3020  66.1062     0.1958     1.0         0.0         1.0
2020-03-17  44.73  43.79  71.5925  72.8098    -1.2173     0.0        -1.0         0.0
2020-03-18  39.50  41.03  69.3055  72.3484    -3.0429     0.0         0.0        -1.0
2020-05-04  63.69  61.34  60.2375  59.8326     0.4049     1.0         1.0         0.0
2020-05-05  66.69  66.00  61.0510  59.5622     1.4888     1.0         0.0         1.0

List the signal change and entry/exit points for TDOC
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19   82.72   81.39   80.1290   76.6006     3.5284     1.0         1.0         0.0
2019-12-20   81.43   83.13   80.3255   76.8690     3.4565     1.0         0.0         1.0
2020-06-11  173.73  178.00  170.6320  170.6560    -0.0240     0.0        -1.0         0.0
2020-06-12  172.27  177.36  170.2685  170.8508    -0.5823     0.0         0.0        -1.0
2020-06-23  198.08  206.00  177.6825  177.2204     0.4621     1.0         1.0         0.0
2020-06-24  197.01  198.48  179.4010  178.0140     1.3870     1.0         0.0         1.0

List the signal change and entry/exit points for TGT
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  128.70  127.72  126.1895  117.1302     9.0593     1.0         1.0         0.0
2019-12-20  129.15  129.45  126.2645  117.5018     8.7627     1.0         0.0         1.0
2020-01-24  114.32  116.00  122.1100  122.8504    -0.7404     0.0        -1.0         0.0
2020-01-27  115.78  112.95  121.4545  122.9990    -1.5445     0.0         0.0        -1.0
2020-04-29  112.10  113.50  104.8600  104.1416     0.7184     1.0         1.0         0.0
2020-04-30  109.74  111.08  105.5835  103.9886     1.5949     1.0         0.0         1.0

List the signal change and entry/exit points for TMO
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  323.25  319.67  315.9875  302.8566    13.1309     1.0         1.0         0.0
2019-12-20  326.72  328.41  317.0580  303.7778    13.2802     1.0         0.0         1.0
2020-02-26  309.16  308.74  328.6530  328.6958    -0.0428     0.0        -1.0         0.0
2020-02-27  297.08  304.00  326.8125  328.2274    -1.4149     0.0         0.0        -1.0
2020-04-23  320.51  335.40  306.3470  306.0794     0.2676     1.0         1.0         0.0
2020-04-24  328.70  322.61  308.6245  305.9620     2.6625     1.0         0.0         1.0

List the signal change and entry/exit points for TTD
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  262.71  255.53  249.8940  224.4266    25.4674     1.0         1.0         0.0
2019-12-20  263.75  264.39  251.0780  225.9886    25.0894     1.0         0.0         1.0
2020-03-11  223.94  227.00  277.7900  279.6618    -1.8718     0.0        -1.0         0.0
2020-03-12  192.65  200.50  272.1830  278.4604    -6.2774     0.0         0.0        -1.0
2020-04-30  292.58  295.73  228.3665  226.5346     1.8319     1.0         1.0         0.0
2020-05-01  278.90  282.10  234.0725  225.8836     8.1889     1.0         0.0         1.0

List the signal change and entry/exit points for TTWO
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  121.82  122.92  121.9825  121.5622     0.4203     1.0         1.0         0.0
2019-12-20  123.61  122.95  122.0360  121.5864     0.4496     1.0         0.0         1.0
2020-02-13  112.21  113.66  123.0760  123.5534    -0.4774     0.0        -1.0         0.0
2020-02-14  113.43  112.58  122.3655  123.3598    -0.9943     0.0         0.0        -1.0
2020-04-14  122.78  124.26  115.1195  114.9412     0.1783     1.0         1.0         0.0
2020-04-15  123.50  122.49  115.4710  114.9242     0.5468     1.0         0.0         1.0

List the signal change and entry/exit points for TW
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  46.80  46.00  45.1215  43.1766     1.9449     1.0         1.0         0.0
2019-12-20  46.76  46.95  45.2370  43.2908     1.9462     1.0         0.0         1.0
2020-02-03  46.71  46.65  45.5465  45.5606    -0.0141     0.0        -1.0         0.0
2020-02-04  46.33  46.78  45.5575  45.5938    -0.0363     0.0         0.0        -1.0
2020-02-19  50.07  48.99  46.0720  46.0390     0.0330     1.0         1.0         0.0
2020-02-20  51.68  50.14  46.4025  46.1644     0.2381     1.0         0.0         1.0
2020-03-23  36.64  39.04  45.7090  46.2175    -0.5085     0.0        -1.0         0.0
2020-03-24  40.35  38.22  45.2375  46.1011    -0.8636     0.0         0.0        -1.0
2020-04-22  51.25  52.47  47.2740  46.8681     0.4059     1.0         1.0         0.0
2020-04-23  52.52  52.06  47.8195  46.9949     0.8246     1.0         0.0         1.0

List the signal change and entry/exit points for TWLO
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-07  108.06  107.63  100.2335   99.8402     0.3933     1.0         1.0         0.0
2020-01-08  109.39  108.80  100.7535   99.8884     0.8651     1.0         0.0         1.0
2020-03-10   92.61   96.47  114.7915  116.0102    -1.2187     0.0        -1.0         0.0
2020-03-11   87.01   90.18  112.8715  115.7418    -2.8703     0.0         0.0        -1.0
2020-04-29  111.30  106.07   99.0465   98.8836     0.1629     1.0         1.0         0.0
2020-04-30  112.30  111.13  100.4150   98.5684     1.8466     1.0         0.0         1.0

List the signal change and entry/exit points for UNH
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  294.62  295.00  282.6370  262.9950    19.6420     1.0         1.0         0.0
2019-12-20  292.59  298.90  283.4390  264.3722    19.0668     1.0         0.0         1.0
2020-02-19  305.31  303.37  291.0575  291.1710    -0.1135     0.0        -1.0         0.0
2020-02-20  302.13  303.20  291.1345  291.6098    -0.4753     0.0         0.0        -1.0
2020-04-24  291.29  287.29  264.6675  263.6016     1.0659     1.0         1.0         0.0
2020-04-27  293.98  293.21  267.2440  263.4372     3.8068     1.0         0.0         1.0

List the signal change and entry/exit points for VEEV
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  139.77  144.57  147.1070  147.1008     0.0062     1.0         1.0         0.0
2019-12-20  141.87  139.64  146.6675  146.9324    -0.2649     0.0        -1.0         1.0
2019-12-23  143.09  141.00  146.1585  146.7534    -0.5949     0.0         0.0        -1.0
2020-02-04  154.28  150.52  146.1675  145.7280     0.4395     1.0         1.0         0.0
2020-02-05  151.50  155.75  146.7825  145.7448     1.0377     1.0         0.0         1.0
2020-03-16  120.93  123.00  146.6630  147.4460    -0.7830     0.0        -1.0         0.0
2020-03-17  132.94  122.92  145.2090  147.2546    -2.0456     0.0         0.0        -1.0
2020-04-14  173.59  165.90  150.1320  149.3550     0.7770     1.0         1.0         0.0
2020-04-15  174.68  172.00  152.2190  149.8768     2.3422     1.0         0.0         1.0

List the signal change and entry/exit points for VMW
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-02-11  156.19  159.00  151.5845  151.5388     0.0457     1.0         1.0         0.0
2020-02-12  158.87  157.19  151.9235  151.6038     0.3197     1.0         0.0         1.0
2020-03-03  120.59  121.96  149.9465  150.6434    -0.6969     0.0        -1.0         0.0
2020-03-04  125.57  122.49  148.5450  150.1812    -1.6362     0.0         0.0        -1.0
2020-04-24  128.17  127.62  126.4200  125.6994     0.7206     1.0         1.0         0.0
2020-04-27  129.95  130.06  127.1305  125.1182     2.0123     1.0         0.0         1.0

List the signal change and entry/exit points for VZ
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  60.80  60.90  60.5645  60.2664     0.2981     1.0         1.0         0.0
2019-12-20  62.07  61.46  60.6875  60.3112     0.3763     1.0         0.0         1.0
2020-01-22  60.48  60.45  60.2435  60.2638    -0.0203     0.0        -1.0         0.0
2020-01-23  60.51  60.38  60.1990  60.2870    -0.0880     0.0         0.0        -1.0
2020-04-22  57.99  57.41  55.8670  55.7674     0.0996     1.0         1.0         0.0
2020-04-23  57.59  58.12  56.2495  55.7454     0.5041     1.0         0.0         1.0
2020-05-28  55.72  55.58  55.4585  55.5166    -0.0581     0.0        -1.0         0.0
2020-05-29  57.38  55.33  55.4550  55.5778    -0.1228     0.0         0.0        -1.0
2020-06-22  55.66  55.91  56.5960  56.5202     0.0758     1.0         1.0         0.0
2020-06-23  54.94  55.75  56.6280  56.4856     0.1424     1.0         0.0         1.0
2020-07-01  54.67  55.09  56.0585  56.0800    -0.0215     0.0        -1.0         0.0

List the signal change and entry/exit points for WING
             close    open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-20   86.44   85.23  82.2580  81.8691     0.3889     1.0         1.0         0.0
2019-12-23   85.77   86.60  82.8235  81.8115     1.0120     1.0         0.0         1.0
2020-03-10   76.15   77.30  90.3925  91.0604    -0.6679     0.0        -1.0         0.0
2020-03-11   71.57   74.16  89.1210  90.7676    -1.6466     0.0         0.0        -1.0
2020-04-17  107.14  105.04  85.0850  84.6116     0.4734     1.0         1.0         0.0
2020-04-20  109.35  105.88  87.7285  84.9324     2.7961     1.0         0.0         1.0

List the signal change and entry/exit points for WIX
             close    open    fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2020-01-10  140.26  140.82  124.52025  124.4011    0.11915     1.0         1.0         0.0
2020-01-13  142.43  141.61  125.68975  124.7595    0.93025     1.0         0.0         1.0
2020-03-10  120.90  120.05  138.05550  138.4207   -0.36520     0.0        -1.0         0.0
2020-03-11  114.98  118.49  136.58850  138.2840   -1.69550     0.0         0.0        -1.0
2020-04-29  134.24  131.43  119.33750  119.0404    0.29710     1.0         1.0         0.0
2020-04-30  130.81  133.64  121.24700  118.5518    2.69520     1.0         0.0         1.0

List the signal change and entry/exit points for WMT
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  120.08  119.94  119.4785  119.3242     0.1543     1.0         1.0         0.0
2019-12-20  120.29  121.48  119.5000  119.3378     0.1622     1.0         0.0         1.0
2020-01-09  117.36  116.15  119.0775  119.0794    -0.0019     0.0        -1.0         0.0
2020-01-10  116.38  117.24  118.9465  119.0640    -0.1175     0.0         0.0        -1.0
2020-04-09  121.80  118.22  116.3505  115.7862     0.5643     1.0         1.0         0.0
2020-04-13  125.30  121.27  116.9105  115.9606     0.9499     1.0         0.0         1.0
2020-06-08  121.24  119.75  123.9135  123.9538    -0.0403     0.0        -1.0         0.0
2020-06-09  121.35  121.60  123.7975  124.1892    -0.3917     0.0         0.0        -1.0

List the signal change and entry/exit points for WORK
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-23  21.53  21.23  21.8930  21.8446     0.0484     1.0         1.0         0.0
2019-12-24  21.35  21.50  21.8355  21.7792     0.0563     1.0         0.0         1.0
2020-02-05  23.31  23.36  22.0155  22.0442    -0.0287     0.0        -1.0         0.0
2020-02-06  22.65  23.40  21.9595  22.0738    -0.1143     0.0         0.0        -1.0
2020-02-11  25.98  24.55  22.2605  22.2398     0.0207     1.0         1.0         0.0
2020-02-12  25.81  26.05  22.4370  22.2996     0.1374     1.0         0.0         1.0
2020-03-27  28.58  27.75  24.1540  24.1912    -0.0372     0.0        -1.0         0.0
2020-03-30  28.21  29.09  24.2040  24.2960    -0.0920     0.0         0.0        -1.0
2020-04-16  29.38  27.76  25.5640  25.2966     0.2674     1.0         1.0         0.0
2020-04-17  28.10  28.40  25.9185  25.3924     0.5261     1.0         0.0         1.0

List the signal change and entry/exit points for ZM
            close   open  fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  68.18  67.75  68.5525  68.1922     0.3603     1.0         1.0         0.0
2019-12-20  66.93  68.20  68.4030  68.1106     0.2924     1.0         0.0         1.0
2019-12-24  66.46  66.30  67.6480  67.9198    -0.2718     0.0        -1.0         0.0
2019-12-26  67.45  66.50  67.2625  67.8466    -0.5841     0.0         0.0        -1.0
2020-01-14  73.16  74.32  69.0215  68.9386     0.0829     1.0         1.0         0.0
2020-01-15  76.94  73.28  69.5510  69.0696     0.4814     1.0         0.0         1.0

List the signal change and entry/exit points for ZS
            close   open   fast_ma  slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-19  47.91  47.03  48.24700  45.9809    2.26610     1.0         1.0         0.0
2019-12-20  49.13  48.06  48.43250  46.0175    2.41500     1.0         0.0         1.0
2020-03-10  47.01  46.15  55.03300  55.3328   -0.29980     0.0        -1.0         0.0
2020-03-11  42.88  45.79  54.13100  55.2382   -1.10720     0.0         0.0        -1.0
2020-04-08  64.93  62.43  56.05175  55.7581    0.29365     1.0         1.0         0.0
2020-04-09  62.59  64.18  57.20625  55.8673    1.33895     1.0         0.0         1.0

List the signal change and entry/exit points for ZTS
             close    open   fast_ma   slow_ma  ma_change  signal  signal_chg  entry_exit
2019-12-20  132.68  129.38  123.2395  123.0546     0.1849     1.0         1.0         0.0
2019-12-23  132.37  132.71  123.8675  123.1326     0.7349     1.0         0.0         1.0
2020-03-12  120.28  122.26  137.4255  137.4874    -0.0619     0.0        -1.0         0.0
2020-03-13  125.48  124.35  136.4525  137.3500    -0.8975     0.0         0.0        -1.0
2020-04-30  129.31  125.50  125.2510  124.1994     1.0516     1.0         1.0         0.0
2020-05-01  127.53  127.44  125.8260  123.8790     1.9470     1.0         0.0         1.0

In [25]:
for ticker in stock_list:
    graph_data = model_collection[ticker][:]
    fig = plt.figure(figsize=(16,9))
    ylabel = ticker + ' Price ($)'
    ax1 = fig.add_subplot(111, ylabel=ylabel)
    graph_data['fast_ma'].plot(ax=ax1, color='b', lw=2.)
    graph_data['slow_ma'].plot(ax=ax1, color='r', lw=2.)
    graph_data['close'].plot(ax=ax1, color='g', lw=2.)
    ax1.plot(graph_data.loc[graph_data.entry_exit == 1].index, graph_data.close[graph_data.entry_exit == 1], '^', markersize=7, color='k',label='buy')
    ax1.plot(graph_data.loc[graph_data.entry_exit == -1].index, graph_data.close[graph_data.entry_exit == -1], 'v', markersize=7, color='k',label='sell')
    plt.legend()
    plt.show()

Task 4. Back-test Model

In [26]:
def trading_portfolio_generation(ticker_symbol, initial_fund, trading_model):
    # Construct a portfolio to track the transactions and returns
    portfolio = pd.DataFrame(index=trading_model[ticker_symbol].index, columns=['trade_action', 'qty_onhand', 'cost_basis', 'sale_proceed', 'gain_loss', 'cash_value', 'position_value', 'total_value', 'accumu_return'])
    portfolio.iloc[0]['trade_action'] = 0
    portfolio.iloc[0]['qty_onhand'] = 0
    portfolio.iloc[0]['cost_basis'] = 0.00
    portfolio.iloc[0]['sale_proceed'] = 0.00
    portfolio.iloc[0]['gain_loss'] = 0.00
    portfolio.iloc[0]['cash_value'] = initial_fund
    portfolio.iloc[0]['position_value'] = 0.00
    portfolio.iloc[0]['total_value'] = initial_fund
    portfolio.iloc[0]['accumu_return'] = portfolio.iloc[0]['total_value'] - initial_fund

    # The conditional parameters below determine how the trading strategy will be carried out
    for i in range(1, len(portfolio)):
        if (trading_model[ticker_symbol].iloc[i]['entry_exit'] == 1) and (portfolio.iloc[i-1]['qty_onhand'] == 0):
            portfolio.iloc[i]['trade_action'] = 1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['sale_proceed'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_value'] = portfolio.iloc[i-1]['cash_value'] - portfolio.iloc[i]['cost_basis']
            recent_cost = trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action']
            if verbose: print('BOUGHT QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model[ticker_symbol].iloc[i]['open'])
        elif (trading_model[ticker_symbol].iloc[i]['entry_exit'] == -1) and (portfolio.iloc[i-1]['qty_onhand'] > 0):
            portfolio.iloc[i]['trade_action'] = -1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = 0.00
            portfolio.iloc[i]['sale_proceed'] = trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action'] * -1
            portfolio.iloc[i]['gain_loss'] = (recent_cost + (trading_model[ticker_symbol].iloc[i]['open'] * portfolio.iloc[i]['trade_action'])) * -1
            portfolio.iloc[i]['cash_value'] = portfolio.iloc[i-1]['cash_value'] + portfolio.iloc[i]['sale_proceed']
            recent_cost = 0.00
            if verbose: print('SOLD QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model[ticker_symbol].iloc[i]['open'])
        else:
            portfolio.iloc[i]['trade_action'] = 0
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand']
            portfolio.iloc[i]['cost_basis'] = portfolio.iloc[i-1]['cost_basis']
            portfolio.iloc[i]['sale_proceed'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_value'] = portfolio.iloc[i-1]['cash_value']
        portfolio.iloc[i]['position_value'] = trading_model[ticker_symbol].iloc[i]['close'] * portfolio.iloc[i]['qty_onhand']
        portfolio.iloc[i]['total_value'] = portfolio.iloc[i]['cash_value'] + portfolio.iloc[i]['position_value']
        portfolio.iloc[i]['accumu_return'] = portfolio.iloc[i]['total_value'] - initial_fund

    return portfolio
In [27]:
initial_capital = 0
portfolio_collection = {}

stock_status = stock_meta.copy()
stock_status.drop(['Share_Outstanding'], axis=1, inplace=True)

for ticker in stock_list:
    print('Processing portfolio for ticker symbol:', ticker)
    portfolio_collection[ticker] = trading_portfolio_generation(ticker, initial_capital, model_collection)
    trade_transactions = portfolio_collection[ticker][portfolio_collection[ticker].trade_action != 0]
    print(trade_transactions)
    stock_status.loc[ticker, 'trading_pandl'] = portfolio_collection[ticker].accumu_return[-1]
    print('Accumulated profit/loss for one share of stock with initial capital of $%.0f at the end of modeling period: $%.2f' % (initial_capital, stock_status.loc[ticker, 'trading_pandl']))
    stock_status.loc[ticker, 'trading_return'] = portfolio_collection[ticker].accumu_return[-1] / trade_transactions.cost_basis[0]
    print('Accumulated return percentage based on the cost of first share of stock investment: %.2f%%\n' % (stock_status.loc[ticker, 'trading_return'] * 100))
    if trade_transactions.iloc[-1]['trade_action'] == 1:
        stock_status.loc[ticker, 'current_status'] = 'Holding Position'
        stock_status.loc[ticker, 'last_action_date'] = trade_transactions.index.tolist()[-1]
    else:
        stock_status.loc[ticker, 'current_status'] = 'Waiting to Enter'
        stock_status.loc[ticker, 'last_action_date'] = trade_transactions.index.tolist()[-1]
Processing portfolio for ticker symbol: AAPL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     282.23            0         0    -282.23         279.44       -2.79         -2.79
2020-03-06           -1          0          0          282     -0.23      -0.23              0       -0.23         -0.23
2020-05-01            1          1     286.25            0         0    -286.48         289.07        2.59          2.59
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $77.63
Accumulated return percentage based on the cost of first share of stock investment: 27.51%

Processing portfolio for ticker symbol: ABBV
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1       90.4            0         0      -90.4          89.29       -1.11         -1.11
2020-01-29           -1          0          0         83.8      -6.6       -6.6              0        -6.6          -6.6
2020-02-24            1          1      92.17            0         0     -98.77          93.14       -5.63         -5.63
2020-03-17           -1          0          0        75.71    -16.46     -23.06              0      -23.06        -23.06
2020-05-04            1          1      82.22            0         0    -105.28          81.86      -23.42        -23.42
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-6.13
Accumulated return percentage based on the cost of first share of stock investment: -6.78%

Processing portfolio for ticker symbol: ABT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      88.99            0         0     -88.99          86.66       -2.33         -2.33
2020-02-28           -1          0          0        77.12    -11.87     -11.87              0      -11.87        -11.87
2020-04-22            1          1      94.28            0         0    -106.15          95.48      -10.67        -10.67
2020-06-15           -1          0          0        87.52     -6.76     -18.63              0      -18.63        -18.63
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-18.63
Accumulated return percentage based on the cost of first share of stock investment: -20.93%

Processing portfolio for ticker symbol: ADBE
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     328.37            0         0    -328.37         327.61       -0.76         -0.76
2020-03-13           -1          0          0       312.88    -15.49     -15.49              0      -15.49        -15.49
2020-05-01            1          1     347.24            0         0    -362.73         343.84      -18.89        -18.89
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $77.08
Accumulated return percentage based on the cost of first share of stock investment: 23.47%

Processing portfolio for ticker symbol: AKAM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-10            1          1      93.59            0         0     -93.59          93.53       -0.06         -0.06
2020-03-13           -1          0          0        84.38     -9.21      -9.21              0       -9.21         -9.21
2020-04-16            1          1     100.63            0         0    -109.84         105.84          -4            -4
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-3.51
Accumulated return percentage based on the cost of first share of stock investment: -3.75%

Processing portfolio for ticker symbol: AMD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      43.44            0         0     -43.44          44.15        0.71          0.71
2020-03-13           -1          0          0         42.2     -1.24      -1.24              0       -1.24         -1.24
2020-04-21            1          1       56.9            0         0     -58.14          52.92       -5.22         -5.22
2020-06-22           -1          0          0        54.67     -2.23      -3.47              0       -3.47         -3.47
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-3.47
Accumulated return percentage based on the cost of first share of stock investment: -7.99%

Processing portfolio for ticker symbol: AMT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-27            1          1     228.52            0         0    -228.52         229.08        0.56          0.56
2020-03-19           -1          0          0       217.57    -10.95     -10.95              0      -10.95        -10.95
2020-04-23            1          1     252.19            0         0    -263.14          248.6      -14.54        -14.54
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $2.25
Accumulated return percentage based on the cost of first share of stock investment: 0.98%

Processing portfolio for ticker symbol: AMZN
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1    1799.62            0         0   -1799.62         1786.5      -13.12        -13.12
2020-03-17           -1          0          0      1775.47    -24.15     -24.15              0      -24.15        -24.15
2020-04-16            1          1       2346            0         0   -2370.15        2408.19       38.04         38.04
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $508.55
Accumulated return percentage based on the cost of first share of stock investment: 28.26%

Processing portfolio for ticker symbol: ATVI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1       59.4            0         0      -59.4          59.22       -0.18         -0.18
2020-03-17           -1          0          0        53.66     -5.74      -5.74              0       -5.74         -5.74
2020-04-21            1          1      65.92            0         0     -71.66          65.72       -5.94         -5.94
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.37
Accumulated return percentage based on the cost of first share of stock investment: 10.72%

Processing portfolio for ticker symbol: BNTX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      31.81            0         0     -31.81          34.97        3.16          3.16
2020-02-12           -1          0          0           30     -1.81      -1.81              0       -1.81         -1.81
2020-03-18            1          1      90.39            0         0      -92.2             92        -0.2          -0.2
2020-05-06           -1          0          0        50.14    -40.25     -42.06              0      -42.06        -42.06
2020-05-18            1          1      54.74            0         0      -96.8          60.17      -36.63        -36.63
2020-05-22           -1          0          0        52.15     -2.59     -44.65              0      -44.65        -44.65
2020-06-01            1          1         50            0         0     -94.65           52.3      -42.35        -42.35
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-30.51
Accumulated return percentage based on the cost of first share of stock investment: -95.91%

Processing portfolio for ticker symbol: BSX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      45.26            0         0     -45.26          45.37        0.11          0.11
2020-02-04           -1          0          0        42.83     -2.43      -2.43              0       -2.43         -2.43
2020-04-29            1          1       36.8            0         0     -39.23          37.43        -1.8          -1.8
2020-06-29           -1          0          0        33.56     -3.24      -5.67              0       -5.67         -5.67
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-5.67
Accumulated return percentage based on the cost of first share of stock investment: -12.53%

Processing portfolio for ticker symbol: BYND
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-14            1          1     124.73            0         0    -124.73         117.05       -7.68         -7.68
2020-03-13           -1          0          0        76.01    -48.72     -48.72              0      -48.72        -48.72
2020-05-04            1          1         89            0         0    -137.72          95.16      -42.56        -42.56
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $3.92
Accumulated return percentage based on the cost of first share of stock investment: 3.14%

Processing portfolio for ticker symbol: CAG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      33.67            0         0     -33.67          35.07         1.4           1.4
2020-02-25           -1          0          0        29.31     -4.36      -4.36              0       -4.36         -4.36
2020-04-16            1          1      33.19            0         0     -37.55          33.47       -4.08         -4.08
2020-06-29           -1          0          0        32.97     -0.22      -4.58              0       -4.58         -4.58
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.58
Accumulated return percentage based on the cost of first share of stock investment: -13.60%

Processing portfolio for ticker symbol: CCI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-31            1          1     141.45            0         0    -141.45         142.15         0.7           0.7
2020-03-23           -1          0          0        126.8    -14.65     -14.65              0      -14.65        -14.65
2020-04-24            1          1     161.61            0         0    -176.26         161.61      -14.65        -14.65
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.37
Accumulated return percentage based on the cost of first share of stock investment: -3.09%

Processing portfolio for ticker symbol: CHGG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      38.88            0         0     -38.88          38.35       -0.53         -0.53
2020-03-04           -1          0          0        39.86      0.98       0.98              0        0.98          0.98
2020-04-28            1          1       42.7            0         0     -41.72          41.15       -0.57         -0.57
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $26.36
Accumulated return percentage based on the cost of first share of stock investment: 67.80%

Processing portfolio for ticker symbol: CHWY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      28.53            0         0     -28.53          29.08        0.55          0.55
2020-02-19           -1          0          0         28.9      0.37       0.37              0        0.37          0.37
2020-03-06            1          1      27.69            0         0     -27.32          28.02         0.7           0.7
2020-03-12           -1          0          0        23.09      -4.6      -4.23              0       -4.23         -4.23
2020-03-27            1          1      33.49            0         0     -37.72          36.16       -1.56         -1.56
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $8.74
Accumulated return percentage based on the cost of first share of stock investment: 30.63%

Processing portfolio for ticker symbol: CL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1       69.1            0         0      -69.1          68.85       -0.25         -0.25
2020-03-17           -1          0          0        64.19     -4.91      -4.91              0       -4.91         -4.91
2020-04-28            1          1      71.94            0         0     -76.85          71.11       -5.74         -5.74
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-3.82
Accumulated return percentage based on the cost of first share of stock investment: -5.53%

Processing portfolio for ticker symbol: CLX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     152.57            0         0    -152.57         152.66        0.09          0.09
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $67.00
Accumulated return percentage based on the cost of first share of stock investment: 43.91%

Processing portfolio for ticker symbol: CMG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1        838            0         0       -838         834.53       -3.47         -3.47
2020-03-05           -1          0          0       750.01    -87.99     -87.99              0      -87.99        -87.99
2020-04-27            1          1        891            0         0    -978.99         883.07      -95.92        -95.92
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $90.01
Accumulated return percentage based on the cost of first share of stock investment: 10.74%

Processing portfolio for ticker symbol: CNC
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      61.24            0         0     -61.24          61.93        0.69          0.69
2020-02-28           -1          0          0        50.66    -10.58     -10.58              0      -10.58        -10.58
2020-04-21            1          1      67.09            0         0     -77.67          66.24      -11.43        -11.43
2020-06-12           -1          0          0        64.24     -2.85     -13.43              0      -13.43        -13.43
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-13.43
Accumulated return percentage based on the cost of first share of stock investment: -21.93%

Processing portfolio for ticker symbol: COR
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-23            1          1     117.75            0         0    -117.75         117.09       -0.66         -0.66
2020-03-02           -1          0          0        104.3    -13.45     -13.45              0      -13.45        -13.45
2020-04-17            1          1     120.57            0         0    -134.02         119.25      -14.77        -14.77
2020-06-26           -1          0          0       120.19     -0.38     -13.83              0      -13.83        -13.83
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-13.83
Accumulated return percentage based on the cost of first share of stock investment: -11.75%

Processing portfolio for ticker symbol: COST
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-24            1          1     314.02            0         0    -314.02         310.51       -3.51         -3.51
2020-03-18           -1          0          0          298    -16.02     -16.02              0      -16.02        -16.02
2020-04-28            1          1    310.825            0         0   -326.845         304.95     -21.895       -21.895
2020-06-15           -1          0          0       297.05   -13.775    -29.795              0     -29.795       -29.795
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-29.79
Accumulated return percentage based on the cost of first share of stock investment: -9.49%

Processing portfolio for ticker symbol: COUP
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     147.14            0         0    -147.14         149.28        2.14          2.14
2020-03-05           -1          0          0       149.08      1.94       1.94              0        1.94          1.94
2020-04-24            1          1     161.62            0         0    -159.68         163.27        3.59          3.59
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $128.11
Accumulated return percentage based on the cost of first share of stock investment: 87.07%

Processing portfolio for ticker symbol: CPB
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      48.41            0         0     -48.41          49.17        0.76          0.76
2020-02-27           -1          0          0        46.36     -2.05      -2.05              0       -2.05         -2.05
2020-03-09            1          1      49.69            0         0     -51.74           50.2       -1.54         -1.54
2020-03-27           -1          0          0        42.99      -6.7      -8.75              0       -8.75         -8.75
2020-03-30            1          1      44.95            0         0      -53.7          46.53       -7.17         -7.17
2020-03-31           -1          0          0        46.52      1.57      -7.18              0       -7.18         -7.18
2020-04-24            1          1      50.82            0         0        -58          50.75       -7.25         -7.25
2020-06-12           -1          0          0        48.16     -2.66      -9.84              0       -9.84         -9.84
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-9.84
Accumulated return percentage based on the cost of first share of stock investment: -20.33%

Processing portfolio for ticker symbol: CRM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     164.73            0         0    -164.73         164.55       -0.18         -0.18
2020-03-11           -1          0          0       157.68     -7.05      -7.05              0       -7.05         -7.05
2020-05-05            1          1     162.53            0         0    -169.58         163.25       -6.33         -6.33
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $22.31
Accumulated return percentage based on the cost of first share of stock investment: 13.54%

Processing portfolio for ticker symbol: CRWD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      49.91            0         0     -49.91          49.49       -0.42         -0.42
2019-12-30           -1          0          0           50      0.09       0.09              0        0.09          0.09
2020-01-16            1          1       61.5            0         0     -61.41          62.24        0.83          0.83
2020-03-12           -1          0          0         38.6     -22.9     -22.81              0      -22.81        -22.81
2020-04-17            1          1      64.46            0         0     -87.27          64.74      -22.53        -22.53
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $15.68
Accumulated return percentage based on the cost of first share of stock investment: 31.42%

Processing portfolio for ticker symbol: CTXS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     112.25            0         0    -112.25         111.06       -1.19         -1.19
2020-03-05           -1          0          0       107.51     -4.74      -4.74              0       -4.74         -4.74
2020-03-31            1          1     144.08            0         0    -148.82         141.55       -7.27         -7.27
2020-06-05           -1          0          0       137.62     -6.46      -11.2              0       -11.2         -11.2
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-11.20
Accumulated return percentage based on the cost of first share of stock investment: -9.98%

Processing portfolio for ticker symbol: D
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      82.29            0         0     -82.29          82.32        0.03          0.03
2019-12-23           -1          0          0         82.3      0.01       0.01              0        0.01          0.01
2020-01-14            1          1      81.98            0         0     -81.97          81.95       -0.02         -0.02
2020-03-17           -1          0          0        70.26    -11.72     -11.71              0      -11.71        -11.71
2020-05-04            1          1      75.57            0         0     -87.28           75.8      -11.48        -11.48
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.91
Accumulated return percentage based on the cost of first share of stock investment: -5.97%

Processing portfolio for ticker symbol: DDOG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      37.71            0         0     -37.71          38.51         0.8           0.8
2020-03-17           -1          0          0        29.53     -8.18      -8.18              0       -8.18         -8.18
2020-04-30            1          1      44.93            0         0     -53.11          45.12       -7.99         -7.99
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $36.27
Accumulated return percentage based on the cost of first share of stock investment: 96.18%

Processing portfolio for ticker symbol: DG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-02-07            1          1      155.3            0         0     -155.3         154.97       -0.33         -0.33
2020-03-20           -1          0          0       142.39    -12.91     -12.91              0      -12.91        -12.91
2020-04-17            1          1     180.25            0         0    -193.16         182.11      -11.05        -11.05
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-2.24
Accumulated return percentage based on the cost of first share of stock investment: -1.44%

Processing portfolio for ticker symbol: DHR
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     151.06            0         0    -151.06         152.85        1.79          1.79
2020-03-05           -1          0          0       152.98      1.92       1.92              0        1.92          1.92
2020-04-24            1          1     161.59            0         0    -159.67         165.07         5.4           5.4
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $17.46
Accumulated return percentage based on the cost of first share of stock investment: 11.56%

Processing portfolio for ticker symbol: DOCU
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      74.21            0         0     -74.21          74.18       -0.03         -0.03
2020-03-25           -1          0          0           85     10.79      10.79              0       10.79         10.79
2020-04-15            1          1      97.93            0         0     -87.14         100.53       13.39         13.39
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $91.82
Accumulated return percentage based on the cost of first share of stock investment: 123.73%

Processing portfolio for ticker symbol: DPZ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     293.07            0         0    -293.07            292       -1.07         -1.07
2020-01-29           -1          0          0        285.1     -7.97      -7.97              0       -7.97         -7.97
2020-02-24            1          1     355.51            0         0    -363.48         363.01       -0.47         -0.47
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $12.23
Accumulated return percentage based on the cost of first share of stock investment: 4.17%

Processing portfolio for ticker symbol: DXCM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     217.19            0         0    -217.19         213.42       -3.77         -3.77
2020-03-25           -1          0          0       239.67     22.48      22.48              0       22.48         22.48
2020-04-20            1          1     322.87            0         0    -300.39         323.27       22.88         22.88
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $99.82
Accumulated return percentage based on the cost of first share of stock investment: 45.96%

Processing portfolio for ticker symbol: EA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     108.02            0         0    -108.02         107.95       -0.07         -0.07
2020-02-27           -1          0          0       104.35     -3.67      -3.67              0       -3.67         -3.67
2020-04-21            1          1     114.68            0         0    -118.35         113.27       -5.08         -5.08
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $16.87
Accumulated return percentage based on the cost of first share of stock investment: 15.62%

Processing portfolio for ticker symbol: EBAY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-03            1          1      35.92            0         0     -35.92          35.96        0.04          0.04
2020-02-03           -1          0          0        33.75     -2.17      -2.17              0       -2.17         -2.17
2020-02-07            1          1      35.83            0         0        -38           36.2        -1.8          -1.8
2020-03-18           -1          0          0        31.62     -4.21      -6.38              0       -6.38         -6.38
2020-04-28            1          1      39.59            0         0     -45.97          39.08       -6.89         -6.89
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.99
Accumulated return percentage based on the cost of first share of stock investment: 19.46%

Processing portfolio for ticker symbol: EBS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-16            1          1         55            0         0        -55          56.04        1.04          1.04
2020-03-20           -1          0          0        53.86     -1.14      -1.14              0       -1.14         -1.14
2020-04-22            1          1      67.89            0         0     -69.03           66.6       -2.43         -2.43
2020-06-24           -1          0          0         74.9      7.01       5.87              0        5.87          5.87
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $5.87
Accumulated return percentage based on the cost of first share of stock investment: 10.67%

Processing portfolio for ticker symbol: EQIX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     581.85            0         0    -581.85         577.71       -4.14         -4.14
2020-03-20           -1          0          0       549.75     -32.1      -32.1              0       -32.1         -32.1
2020-04-17            1          1     681.85            0         0    -713.95         694.95         -19           -19
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $14.22
Accumulated return percentage based on the cost of first share of stock investment: 2.44%

Processing portfolio for ticker symbol: ETSY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-09            1          1       45.3            0         0      -45.3          46.43        1.13          1.13
2020-03-24           -1          0          0        35.26    -10.04     -10.04              0      -10.04        -10.04
2020-04-24            1          1      64.05            0         0     -74.09          66.19        -7.9          -7.9
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $37.12
Accumulated return percentage based on the cost of first share of stock investment: 81.94%

Processing portfolio for ticker symbol: EVBG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      79.51            0         0     -79.51           80.7        1.19          1.19
2020-01-08           -1          0          0        82.91       3.4        3.4              0         3.4           3.4
2020-01-23            1          1      88.75            0         0     -85.35         87.125       1.775         1.775
2020-06-30           -1          0          0       136.41     47.66      51.06              0       51.06         51.06
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $51.06
Accumulated return percentage based on the cost of first share of stock investment: 64.22%

Processing portfolio for ticker symbol: FSLY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-16            1          1       22.6            0         0      -22.6          24.08        1.48          1.48
2020-03-03           -1          0          0         21.1      -1.5       -1.5              0        -1.5          -1.5
2020-04-20            1          1      23.19            0         0     -24.69          23.98       -0.71         -0.71
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $61.76
Accumulated return percentage based on the cost of first share of stock investment: 273.27%

Processing portfolio for ticker symbol: GILD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      65.59            0         0     -65.59          66.85        1.26          1.26
2020-01-15           -1          0          0        64.07     -1.52      -1.52              0       -1.52         -1.52
2020-02-19            1          1       67.2            0         0     -68.72          67.35       -1.37         -1.37
2020-06-01           -1          0          0        75.47      8.27       6.75              0        6.75          6.75
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.75
Accumulated return percentage based on the cost of first share of stock investment: 10.29%

Processing portfolio for ticker symbol: GIS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      53.75            0         0     -53.75          53.28       -0.47         -0.47
2020-01-10           -1          0          0        52.49     -1.26      -1.26              0       -1.26         -1.26
2020-01-14            1          1       53.1            0         0     -54.36             53       -1.36         -1.36
2020-02-27           -1          0          0        51.81     -1.29      -2.55              0       -2.55         -2.55
2020-03-12            1          1       49.2            0         0     -51.75             50       -1.75         -1.75
2020-03-13           -1          0          0        52.95      3.75        1.2              0         1.2           1.2
2020-03-18            1          1      57.65            0         0     -56.45          57.75         1.3           1.3
2020-03-24           -1          0          0        49.03     -8.62      -7.42              0       -7.42         -7.42
2020-04-01            1          1      51.74            0         0     -59.16          53.12       -6.04         -6.04
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $1.27
Accumulated return percentage based on the cost of first share of stock investment: 2.36%

Processing portfolio for ticker symbol: GOLD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      17.65            0         0     -17.65          17.45        -0.2          -0.2
2020-03-24           -1          0          0        18.78      1.13       1.13              0        1.13          1.13
2020-04-15            1          1      23.74            0         0     -22.61          24.47        1.86          1.86
2020-06-15           -1          0          0         23.5     -0.24       0.89              0        0.89          0.89
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $0.89
Accumulated return percentage based on the cost of first share of stock investment: 5.04%

Processing portfolio for ticker symbol: GOOG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1    1363.35            0         0   -1363.35        1349.59      -13.76        -13.76
2020-03-10           -1          0          0         1260   -103.35    -103.35              0     -103.35       -103.35
2020-05-01            1          1     1328.5            0         0   -1431.85        1320.61     -111.24       -111.24
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.19
Accumulated return percentage based on the cost of first share of stock investment: 0.45%

Processing portfolio for ticker symbol: HD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-22            1          1     233.79            0         0    -233.79          232.9       -0.89         -0.89
2020-03-16           -1          0          0       181.97    -51.82     -51.82              0      -51.82        -51.82
2020-05-04            1          1     216.68            0         0     -268.5         221.84      -46.66        -46.66
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-20.35
Accumulated return percentage based on the cost of first share of stock investment: -8.70%

Processing portfolio for ticker symbol: HRL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      45.04            0         0     -45.04          44.96       -0.08         -0.08
2020-03-05           -1          0          0        44.26     -0.78      -0.78              0       -0.78         -0.78
2020-04-13            1          1      47.62            0         0      -48.4           47.1        -1.3          -1.3
2020-05-28           -1          0          0         47.4     -0.22         -1              0          -1            -1
2020-05-29            1          1         48            0         0        -49          48.83       -0.17         -0.17
2020-06-12           -1          0          0        47.17     -0.83      -1.83              0       -1.83         -1.83
2020-06-22            1          1      48.48            0         0     -50.31          48.39       -1.92         -1.92
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-2.85
Accumulated return percentage based on the cost of first share of stock investment: -6.33%

Processing portfolio for ticker symbol: JNJ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     146.88            0         0    -146.88         146.06       -0.82         -0.82
2020-03-05           -1          0          0        140.8     -6.08      -6.08              0       -6.08         -6.08
2020-04-23            1          1     154.25            0         0    -160.33         155.51       -4.82         -4.82
2020-06-15           -1          0          0          141    -13.25     -19.33              0      -19.33        -19.33
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-19.33
Accumulated return percentage based on the cost of first share of stock investment: -13.16%

Processing portfolio for ticker symbol: KR
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      28.98            0         0     -28.98             29        0.02          0.02
2020-02-06           -1          0          0        28.23     -0.75      -0.75              0       -0.75         -0.75
2020-02-28            1          1         28            0         0     -28.75          28.13       -0.62         -0.62
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $4.82
Accumulated return percentage based on the cost of first share of stock investment: 16.63%

Processing portfolio for ticker symbol: LLY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     132.49            0         0    -132.49         132.43       -0.06         -0.06
2020-03-10           -1          0          0       139.23      6.74       6.74              0        6.74          6.74
2020-04-20            1          1     156.63            0         0    -149.89         157.79         7.9           7.9
2020-06-12           -1          0          0       145.54    -11.09      -4.35              0       -4.35         -4.35
2020-07-01            1          1     164.32            0         0    -168.67         163.34       -5.33         -5.33
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-5.33
Accumulated return percentage based on the cost of first share of stock investment: -4.02%

Processing portfolio for ticker symbol: LOGI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      46.33            0         0     -46.33          46.34        0.01          0.01
2020-02-19           -1          0          0        42.95     -3.38      -3.38              0       -3.38         -3.38
2020-04-14            1          1      45.63            0         0     -49.01          45.88       -3.13         -3.13
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $15.58
Accumulated return percentage based on the cost of first share of stock investment: 33.63%

Processing portfolio for ticker symbol: LVGO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      26.77            0         0     -26.77          26.26       -0.51         -0.51
2020-01-10           -1          0          0        26.65     -0.12      -0.12              0       -0.12         -0.12
2020-01-28            1          1         26            0         0     -26.12          25.87       -0.25         -0.25
2020-02-14           -1          0          0        27.17      1.17       1.05              0        1.05          1.05
2020-03-06            1          1       27.4            0         0     -26.35          27.84        1.49          1.49
2020-03-13           -1          0          0        25.87     -1.53      -0.48              0       -0.48         -0.48
2020-04-14            1          1      36.25            0         0     -36.73          37.45        0.72          0.72
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $37.68
Accumulated return percentage based on the cost of first share of stock investment: 140.75%

Processing portfolio for ticker symbol: MASI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     158.51            0         0    -158.51         158.58        0.07          0.07
2020-03-23           -1          0          0        154.3     -4.21      -4.21              0       -4.21         -4.21
2020-04-17            1          1     208.59            0         0     -212.8          199.7       -13.1         -13.1
2020-06-25           -1          0          0       222.44     13.85       9.64              0        9.64          9.64
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $9.64
Accumulated return percentage based on the cost of first share of stock investment: 6.08%

Processing portfolio for ticker symbol: MDLZ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      55.11            0         0     -55.11           55.4        0.29          0.29
2020-03-16           -1          0          0        46.41      -8.7       -8.7              0        -8.7          -8.7
2020-05-01            1          1      51.14            0         0     -59.84           50.7       -9.14         -9.14
2020-06-01           -1          0          0        52.03      0.89      -7.81              0       -7.81         -7.81
2020-06-18            1          1      52.37            0         0     -60.18          53.09       -7.09         -7.09
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-9.10
Accumulated return percentage based on the cost of first share of stock investment: -16.51%

Processing portfolio for ticker symbol: MKC
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     169.19            0         0    -169.19         168.25       -0.94         -0.94
2020-01-30           -1          0          0       167.74     -1.45      -1.45              0       -1.45         -1.45
2020-04-24            1          1     151.99            0         0    -153.44         154.26        0.82          0.82
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $26.06
Accumulated return percentage based on the cost of first share of stock investment: 15.40%

Processing portfolio for ticker symbol: MKTX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      378.5            0         0     -378.5         376.32       -2.18         -2.18
2020-01-07           -1          0          0       372.54     -5.96      -5.96              0       -5.96         -5.96
2020-04-14            1          1     397.74            0         0     -403.7         397.71       -5.99         -5.99
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $102.31
Accumulated return percentage based on the cost of first share of stock investment: 27.03%

Processing portfolio for ticker symbol: MRNA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1       19.4            0         0      -19.4          19.83        0.43          0.43
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $42.19
Accumulated return percentage based on the cost of first share of stock investment: 217.47%

Processing portfolio for ticker symbol: MRVL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-09            1          1      26.47            0         0     -26.47           26.1       -0.37         -0.37
2020-02-18           -1          0          0        24.71     -1.76      -1.76              0       -1.76         -1.76
2020-04-20            1          1      25.65            0         0     -27.41          26.23       -1.18         -1.18
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $6.96
Accumulated return percentage based on the cost of first share of stock investment: 26.29%

Processing portfolio for ticker symbol: MSFT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     157.35            0         0    -157.35         157.41        0.06          0.06
2020-03-16           -1          0          0          140    -17.35     -17.35              0      -17.35        -17.35
2020-04-23            1          1     174.11            0         0    -191.46         171.42      -20.04        -20.04
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $13.24
Accumulated return percentage based on the cost of first share of stock investment: 8.41%

Processing portfolio for ticker symbol: NEM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      40.94            0         0     -40.94          40.93       -0.01         -0.01
2020-04-02           -1          0          0        47.07      6.13       6.13              0        6.13          6.13
2020-04-14            1          1      60.08            0         0     -53.95          59.89        5.94          5.94
2020-06-16           -1          0          0         56.9     -3.18       2.95              0        2.95          2.95
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $2.95
Accumulated return percentage based on the cost of first share of stock investment: 7.21%

Processing portfolio for ticker symbol: NET
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1       18.3            0         0      -18.3          18.12       -0.18         -0.18
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $18.63
Accumulated return percentage based on the cost of first share of stock investment: 101.80%

Processing portfolio for ticker symbol: NFLX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1        335            0         0       -335          336.9         1.9           1.9
2020-03-20           -1          0          0       342.31      7.31       7.31              0        7.31          7.31
2020-04-16            1          1        437            0         0    -429.69         439.17        9.48          9.48
2020-06-22           -1          0          0       455.01     18.01      25.32              0       25.32         25.32
2020-06-24            1          1     468.54            0         0    -443.22         457.85       14.63         14.63
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $42.42
Accumulated return percentage based on the cost of first share of stock investment: 12.66%

Processing portfolio for ticker symbol: NVDA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     238.13            0         0    -238.13         239.37        1.24          1.24
2020-03-20           -1          0          0          219    -19.13     -19.13              0      -19.13        -19.13
2020-04-21            1          1     282.31            0         0    -301.44         269.51      -31.93        -31.93
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $79.76
Accumulated return percentage based on the cost of first share of stock investment: 33.49%

Processing portfolio for ticker symbol: OKTA
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     116.25            0         0    -116.25         116.22       -0.03         -0.03
2020-03-13           -1          0          0        110.3     -5.95      -5.95              0       -5.95         -5.95
2020-04-20            1          1     147.49            0         0    -153.44          152.6       -0.84         -0.84
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $57.48
Accumulated return percentage based on the cost of first share of stock investment: 49.45%

Processing portfolio for ticker symbol: PANW
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     229.87            0         0    -229.87         230.01        0.14          0.14
2019-12-23           -1          0          0       230.06      0.19       0.19              0        0.19          0.19
2020-01-16            1          1     241.64            0         0    -241.45         243.26        1.81          1.81
2020-02-28           -1          0          0       181.76    -59.88     -59.69              0      -59.69        -59.69
2020-04-28            1          1        200            0         0    -259.69         193.55      -66.14        -66.14
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-30.33
Accumulated return percentage based on the cost of first share of stock investment: -13.19%

Processing portfolio for ticker symbol: PEP
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     137.41            0         0    -137.41         137.92        0.51          0.51
2020-03-12           -1          0          0        122.1    -15.31     -15.31              0      -15.31        -15.31
2020-04-28            1          1     136.78            0         0    -152.09         136.32      -15.77        -15.77
2020-06-15           -1          0          0       128.29     -8.49      -23.8              0       -23.8         -23.8
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-23.80
Accumulated return percentage based on the cost of first share of stock investment: -17.32%

Processing portfolio for ticker symbol: PFE
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      39.35            0         0     -39.35          39.23       -0.12         -0.12
2020-02-13           -1          0          0        37.58     -1.77      -1.77              0       -1.77         -1.77
2020-04-23            1          1      36.28            0         0     -38.05          36.69       -1.36         -1.36
2020-06-16           -1          0          0        33.59     -2.69      -4.46              0       -4.46         -4.46
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.46
Accumulated return percentage based on the cost of first share of stock investment: -11.33%

Processing portfolio for ticker symbol: PG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     126.15            0         0    -126.15         125.36       -0.79         -0.79
2020-02-28           -1          0          0       109.46    -16.69     -16.69              0      -16.69        -16.69
2020-04-27            1          1     119.19            0         0    -135.88         117.45      -18.43        -18.43
2020-06-02           -1          0          0       117.07     -2.12     -18.81              0      -18.81        -18.81
2020-06-22            1          1     118.78            0         0    -137.59         117.75      -19.84        -19.84
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-17.58
Accumulated return percentage based on the cost of first share of stock investment: -13.94%

Processing portfolio for ticker symbol: PLD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      87.72            0         0     -87.72          88.03        0.31          0.31
2019-12-31           -1          0          0        88.86      1.14       1.14              0        1.14          1.14
2020-01-22            1          1      95.17            0         0     -94.03          93.94       -0.09         -0.09
2020-03-11           -1          0          0        78.07     -17.1     -15.96              0      -15.96        -15.96
2020-04-24            1          1      87.09            0         0    -103.05          89.04      -14.01        -14.01
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-7.90
Accumulated return percentage based on the cost of first share of stock investment: -9.01%

Processing portfolio for ticker symbol: PRGO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-23            1          1      53.75            0         0     -53.75          53.94        0.19          0.19
2020-03-12           -1          0          0        42.66    -11.09     -11.09              0      -11.09        -11.09
2020-05-01            1          1      53.12            0         0     -64.21          52.68      -11.53        -11.53
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-9.38
Accumulated return percentage based on the cost of first share of stock investment: -17.45%

Processing portfolio for ticker symbol: PTON
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1         32            0         0        -32          29.99       -2.01         -2.01
2020-01-17           -1          0          0           31        -1         -1              0          -1            -1
2020-02-12            1          1      28.84            0         0     -29.84          28.34        -1.5          -1.5
2020-02-20           -1          0          0         27.1     -1.74      -2.74              0       -2.74         -2.74
2020-04-16            1          1       34.5            0         0     -37.24          36.35       -0.89         -0.89
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $23.01
Accumulated return percentage based on the cost of first share of stock investment: 71.91%

Processing portfolio for ticker symbol: PYPL
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     109.28            0         0    -109.28         108.75       -0.53         -0.53
2020-03-11           -1          0          0       106.65     -2.63      -2.63              0       -2.63         -2.63
2020-04-29            1          1      119.3            0         0    -121.93         123.58        1.65          1.65
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $55.50
Accumulated return percentage based on the cost of first share of stock investment: 50.79%

Processing portfolio for ticker symbol: REGN
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     374.94            0         0    -374.94         375.62        0.68          0.68
2020-01-31           -1          0          0       333.17    -41.77     -41.77              0      -41.77        -41.77
2020-02-25            1          1     437.25            0         0    -479.02         442.35      -36.67        -36.67
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $130.15
Accumulated return percentage based on the cost of first share of stock investment: 34.71%

Processing portfolio for ticker symbol: RMD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     157.36            0         0    -157.36         155.93       -1.43         -1.43
2020-03-17           -1          0          0        140.3    -17.06     -17.06              0      -17.06        -17.06
2020-04-28            1          1        164            0         0    -181.06         158.22      -22.84        -22.84
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $9.80
Accumulated return percentage based on the cost of first share of stock investment: 6.23%

Processing portfolio for ticker symbol: RNG
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     168.04            0         0    -168.04         169.32        1.28          1.28
2020-03-23           -1          0          0       184.49     16.45      16.45              0       16.45         16.45
2020-04-21            1          1     251.05            0         0     -234.6         234.58       -0.02         -0.02
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $55.71
Accumulated return percentage based on the cost of first share of stock investment: 33.15%

Processing portfolio for ticker symbol: SHOP
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     393.05            0         0    -393.05         390.07       -2.98         -2.98
2020-03-18           -1          0          0       326.34    -66.71     -66.71              0      -66.71        -66.71
2020-04-23            1          1      631.3            0         0    -698.01         620.49      -77.52        -77.52
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $318.63
Accumulated return percentage based on the cost of first share of stock investment: 81.07%

Processing portfolio for ticker symbol: SJM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-29            1          1     106.17            0         0    -106.17         105.18       -0.99         -0.99
2020-03-26           -1          0          0       105.03     -1.14      -1.14              0       -1.14         -1.14
2020-04-09            1          1     113.33            0         0    -114.47         112.75       -1.72         -1.72
2020-06-04           -1          0          0       109.51     -3.82      -4.96              0       -4.96         -4.96
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.96
Accumulated return percentage based on the cost of first share of stock investment: -4.67%

Processing portfolio for ticker symbol: SNY
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      50.28            0         0     -50.28          50.55        0.27          0.27
2020-02-18           -1          0          0        50.35      0.07       0.07              0        0.07          0.07
2020-04-28            1          1      49.89            0         0     -49.82          49.87        0.05          0.05
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $1.45
Accumulated return percentage based on the cost of first share of stock investment: 2.88%

Processing portfolio for ticker symbol: SPGI
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      272.5            0         0     -272.5         271.66       -0.84         -0.84
2020-03-10           -1          0          0       252.51    -19.99     -19.99              0      -19.99        -19.99
2020-04-27            1          1     286.46            0         0    -306.45         291.19      -15.26        -15.26
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $28.07
Accumulated return percentage based on the cost of first share of stock investment: 10.30%

Processing portfolio for ticker symbol: SPLK
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     150.15            0         0    -150.15         150.96        0.81          0.81
2020-03-11           -1          0          0          128    -22.15     -22.15              0      -22.15        -22.15
2020-05-05            1          1     140.86            0         0    -163.01        143.615     -19.395       -19.395
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $40.60
Accumulated return percentage based on the cost of first share of stock investment: 27.04%

Processing portfolio for ticker symbol: SPOT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     150.73            0         0    -150.73         150.31       -0.42         -0.42
2020-02-07           -1          0          0       152.79      2.06       2.06              0        2.06          2.06
2020-04-30            1          1     148.94            0         0    -146.88         151.57        4.69          4.69
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $112.02
Accumulated return percentage based on the cost of first share of stock investment: 74.32%

Processing portfolio for ticker symbol: SQ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      64.57            0         0     -64.57          63.63       -0.94         -0.94
2020-01-07           -1          0          0        64.57        -0          0              0           0             0
2020-01-23            1          1      68.86            0         0     -68.86          69.29        0.43          0.43
2020-03-18           -1          0          0        41.03    -27.83     -27.83              0      -27.83        -27.83
2020-05-05            1          1         66            0         0     -93.83          66.69      -27.14        -27.14
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $22.07
Accumulated return percentage based on the cost of first share of stock investment: 34.18%

Processing portfolio for ticker symbol: TDOC
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      83.13            0         0     -83.13          81.43        -1.7          -1.7
2020-06-12           -1          0          0       177.36     94.23      94.23              0       94.23         94.23
2020-06-24            1          1     198.48            0         0    -104.25         197.01       92.76         92.76
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $94.60
Accumulated return percentage based on the cost of first share of stock investment: 113.80%

Processing portfolio for ticker symbol: TGT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     129.45            0         0    -129.45         129.15        -0.3          -0.3
2020-01-27           -1          0          0       112.95     -16.5      -16.5              0       -16.5         -16.5
2020-04-30            1          1     111.08            0         0    -127.58         109.74      -17.84        -17.84
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-8.63
Accumulated return percentage based on the cost of first share of stock investment: -6.67%

Processing portfolio for ticker symbol: TMO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     328.41            0         0    -328.41         326.72       -1.69         -1.69
2020-02-27           -1          0          0          304    -24.41     -24.41              0      -24.41        -24.41
2020-04-24            1          1     322.61            0         0    -347.02          328.7      -18.32        -18.32
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $12.75
Accumulated return percentage based on the cost of first share of stock investment: 3.88%

Processing portfolio for ticker symbol: TTD
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     264.39            0         0    -264.39         263.75       -0.64         -0.64
2020-03-12           -1          0          0        200.5    -63.89     -63.89              0      -63.89        -63.89
2020-05-01            1          1      282.1            0         0    -345.99          278.9      -67.09        -67.09
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $83.15
Accumulated return percentage based on the cost of first share of stock investment: 31.45%

Processing portfolio for ticker symbol: TTWO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     122.95            0         0    -122.95         123.61        0.66          0.66
2020-02-14           -1          0          0       112.58    -10.37     -10.37              0      -10.37        -10.37
2020-04-15            1          1     122.49            0         0    -132.86          123.5       -9.36         -9.36
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $11.25
Accumulated return percentage based on the cost of first share of stock investment: 9.15%

Processing portfolio for ticker symbol: TW
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      46.95            0         0     -46.95          46.76       -0.19         -0.19
2020-02-04           -1          0          0        46.78     -0.17      -0.17              0       -0.17         -0.17
2020-02-20            1          1      50.14            0         0     -50.31          51.68        1.37          1.37
2020-03-24           -1          0          0        38.22    -11.92     -12.09              0      -12.09        -12.09
2020-04-23            1          1      52.06            0         0     -64.15          52.52      -11.63        -11.63
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.92
Accumulated return percentage based on the cost of first share of stock investment: -10.48%

Processing portfolio for ticker symbol: TWLO
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-08            1          1      108.8            0         0     -108.8         109.39        0.59          0.59
2020-03-11           -1          0          0        90.18    -18.62     -18.62              0      -18.62        -18.62
2020-04-30            1          1     111.13            0         0    -129.75          112.3      -17.45        -17.45
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $98.02
Accumulated return percentage based on the cost of first share of stock investment: 90.09%

Processing portfolio for ticker symbol: UNH
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      298.9            0         0     -298.9         292.59       -6.31         -6.31
2020-02-20           -1          0          0        303.2       4.3        4.3              0         4.3           4.3
2020-04-27            1          1     293.21            0         0    -288.91         293.98        5.07          5.07
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $8.82
Accumulated return percentage based on the cost of first share of stock investment: 2.95%

Processing portfolio for ticker symbol: VEEV
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     139.64            0         0    -139.64         141.87        2.23          2.23
2019-12-23           -1          0          0          141      1.36       1.36              0        1.36          1.36
2020-02-05            1          1     155.75            0         0    -154.39          151.5       -2.89         -2.89
2020-03-17           -1          0          0       122.92    -32.83     -31.47              0      -31.47        -31.47
2020-04-15            1          1        172            0         0    -203.47         174.68      -28.79        -28.79
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $38.75
Accumulated return percentage based on the cost of first share of stock investment: 27.75%

Processing portfolio for ticker symbol: VMW
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-02-12            1          1     157.19            0         0    -157.19         158.87        1.68          1.68
2020-03-04           -1          0          0       122.49     -34.7      -34.7              0       -34.7         -34.7
2020-04-27            1          1     130.06            0         0    -164.76         129.95      -34.81        -34.81
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-11.66
Accumulated return percentage based on the cost of first share of stock investment: -7.42%

Processing portfolio for ticker symbol: VZ
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      61.46            0         0     -61.46          62.07        0.61          0.61
2020-01-23           -1          0          0        60.38     -1.08      -1.08              0       -1.08         -1.08
2020-04-23            1          1      58.12            0         0      -59.2          57.59       -1.61         -1.61
2020-05-29           -1          0          0        55.33     -2.79      -3.87              0       -3.87         -3.87
2020-06-23            1          1      55.75            0         0     -59.62          54.94       -4.68         -4.68
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-4.95
Accumulated return percentage based on the cost of first share of stock investment: -8.05%

Processing portfolio for ticker symbol: WING
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-23            1          1       86.6            0         0      -86.6          85.77       -0.83         -0.83
2020-03-11           -1          0          0        74.16    -12.44     -12.44              0      -12.44        -12.44
2020-04-20            1          1     105.88            0         0    -118.32         109.35       -8.97         -8.97
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $24.97
Accumulated return percentage based on the cost of first share of stock investment: 28.83%

Processing portfolio for ticker symbol: WIX
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2020-01-13            1          1     141.61            0         0    -141.61         142.43        0.82          0.82
2020-03-11           -1          0          0       118.49    -23.12     -23.12              0      -23.12        -23.12
2020-04-30            1          1     133.64            0         0    -156.76         130.81      -25.95        -25.95
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $109.01
Accumulated return percentage based on the cost of first share of stock investment: 76.98%

Processing portfolio for ticker symbol: WMT
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1     121.48            0         0    -121.48         120.29       -1.19         -1.19
2020-01-10           -1          0          0       117.24     -4.24      -4.24              0       -4.24         -4.24
2020-04-13            1          1     121.27            0         0    -125.51          125.3       -0.21         -0.21
2020-06-09           -1          0          0        121.6      0.33      -3.91              0       -3.91         -3.91
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-3.91
Accumulated return percentage based on the cost of first share of stock investment: -3.22%

Processing portfolio for ticker symbol: WORK
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-24            1          1       21.5            0         0      -21.5          21.35       -0.15         -0.15
2020-02-06           -1          0          0         23.4       1.9        1.9              0         1.9           1.9
2020-02-12            1          1      26.05            0         0     -24.15          25.81        1.66          1.66
2020-03-30           -1          0          0        29.09      3.04       4.94              0        4.94          4.94
2020-04-17            1          1       28.4            0         0     -23.46           28.1        4.64          4.64
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $7.60
Accumulated return percentage based on the cost of first share of stock investment: 35.35%

Processing portfolio for ticker symbol: ZM
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1       68.2            0         0      -68.2          66.93       -1.27         -1.27
2019-12-26           -1          0          0         66.5      -1.7       -1.7              0        -1.7          -1.7
2020-01-15            1          1      73.28            0         0     -74.98          76.94        1.96          1.96
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $184.15
Accumulated return percentage based on the cost of first share of stock investment: 270.01%

Processing portfolio for ticker symbol: ZS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-20            1          1      48.06            0         0     -48.06          49.13        1.07          1.07
2020-03-11           -1          0          0        45.79     -2.27      -2.27              0       -2.27         -2.27
2020-04-09            1          1      64.18            0         0     -66.45          62.59       -3.86         -3.86
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $45.06
Accumulated return percentage based on the cost of first share of stock investment: 93.76%

Processing portfolio for ticker symbol: ZTS
           trade_action qty_onhand cost_basis sale_proceed gain_loss cash_value position_value total_value accumu_return
2019-12-23            1          1     132.71            0         0    -132.71         132.37       -0.34         -0.34
2020-03-13           -1          0          0       124.35     -8.36      -8.36              0       -8.36         -8.36
2020-05-01            1          1     127.44            0         0     -135.8         127.53       -8.27         -8.27
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $1.39
Accumulated return percentage based on the cost of first share of stock investment: 1.05%

In [28]:
stock_status.sort_values(by=['current_status', 'last_action_date'], ascending=False)
Out[28]:
Name trading_pandl trading_return current_status last_action_date
Symbol
EVBG Everbridge 51.060 0.642183 Waiting to Enter 2020-06-30
BSX Boston Scientific Corporation -5.670 -0.125276 Waiting to Enter 2020-06-29
CAG Conagra -4.580 -0.136026 Waiting to Enter 2020-06-29
COR CoreSite Realty -13.830 -0.117452 Waiting to Enter 2020-06-26
MASI Masimo 9.640 0.060816 Waiting to Enter 2020-06-25
EBS Emergent Biosolutions Inc 5.870 0.106727 Waiting to Enter 2020-06-24
AMD Advanced Micro Devices -3.470 -0.079880 Waiting to Enter 2020-06-22
NEM Newmont Mining 2.950 0.072057 Waiting to Enter 2020-06-16
PFE Pfizer -4.460 -0.113342 Waiting to Enter 2020-06-16
ABT Abbott Labs -18.630 -0.209349 Waiting to Enter 2020-06-15
COST Costco -29.795 -0.094882 Waiting to Enter 2020-06-15
GOLD Barrick Gold 0.890 0.050425 Waiting to Enter 2020-06-15
JNJ Johnson & Johnson -19.330 -0.131604 Waiting to Enter 2020-06-15
PEP PepsiCo -23.800 -0.173204 Waiting to Enter 2020-06-15
CNC Centene -13.430 -0.219301 Waiting to Enter 2020-06-12
CPB Campbell Soup -9.840 -0.203264 Waiting to Enter 2020-06-12
WMT Walmart -3.910 -0.032186 Waiting to Enter 2020-06-09
CTXS Citrix Systems -11.200 -0.099777 Waiting to Enter 2020-06-05
SJM JM Smucker -4.960 -0.046718 Waiting to Enter 2020-06-04
GILD Gilead Sciences 6.750 0.102912 Waiting to Enter 2020-06-01
LLY Eli Lilly -5.330 -0.040229 Holding Position 2020-07-01
NFLX Netflix 42.420 0.126627 Holding Position 2020-06-24
TDOC Teladoc 94.600 1.137977 Holding Position 2020-06-24
VZ Verizon -4.950 -0.080540 Holding Position 2020-06-23
HRL Hormel -2.850 -0.063277 Holding Position 2020-06-22
PG Procter & Gamble -17.580 -0.139358 Holding Position 2020-06-22
MDLZ Mondelez -9.100 -0.165124 Holding Position 2020-06-18
BNTX BioNTech -30.510 -0.959132 Holding Position 2020-06-01
CRM Salesforce 22.310 0.135434 Holding Position 2020-05-05
SPLK Splunk Inc 40.600 0.270396 Holding Position 2020-05-05
SQ Square 22.070 0.341800 Holding Position 2020-05-05
ABBV AbbVie -6.130 -0.067810 Holding Position 2020-05-04
BYND Beyond Meat 3.920 0.031428 Holding Position 2020-05-04
D Dominion Energy -4.910 -0.059667 Holding Position 2020-05-04
HD Home Depot -20.350 -0.087044 Holding Position 2020-05-04
AAPL Apple 77.630 0.275059 Holding Position 2020-05-01
ADBE Adobe 77.080 0.234735 Holding Position 2020-05-01
GOOG Alphabet 6.190 0.004540 Holding Position 2020-05-01
PRGO Perrigo -9.380 -0.174512 Holding Position 2020-05-01
TTD The Trade Desk 83.150 0.314498 Holding Position 2020-05-01
ZTS Zoetis 1.390 0.010474 Holding Position 2020-05-01
DDOG Datadog Inc 36.270 0.961814 Holding Position 2020-04-30
SPOT Spotify 112.020 0.743183 Holding Position 2020-04-30
TGT Target Corporation -8.630 -0.066667 Holding Position 2020-04-30
TWLO Twilio Inc 98.020 0.900919 Holding Position 2020-04-30
WIX Wix.Com Ltd 109.010 0.769790 Holding Position 2020-04-30
PYPL PayPal 55.500 0.507870 Holding Position 2020-04-29
CHGG Chegg Inc 26.360 0.677984 Holding Position 2020-04-28
CL Colgate-Pammolive -3.820 -0.055282 Holding Position 2020-04-28
EBAY eBay 6.990 0.194599 Holding Position 2020-04-28
PANW Palo Alto Networks Inc -30.330 -0.131944 Holding Position 2020-04-28
RMD ResMed 9.800 0.062278 Holding Position 2020-04-28
SNY Sanofi 1.450 0.028839 Holding Position 2020-04-28
CMG Chipotle 90.010 0.107411 Holding Position 2020-04-27
SPGI S&P Global Inc 28.070 0.103009 Holding Position 2020-04-27
UNH UnitedHealth Group 8.820 0.029508 Holding Position 2020-04-27
VMW VMware -11.660 -0.074178 Holding Position 2020-04-27
CCI Crown Castle -4.370 -0.030894 Holding Position 2020-04-24
COUP Coupa Software 128.110 0.870667 Holding Position 2020-04-24
DHR Danaher 17.460 0.115583 Holding Position 2020-04-24
ETSY Etsy Inc 37.120 0.819426 Holding Position 2020-04-24
MKC McCormick 26.060 0.154028 Holding Position 2020-04-24
PLD Prologis -7.900 -0.090059 Holding Position 2020-04-24
TMO Thermo Fisher 12.750 0.038823 Holding Position 2020-04-24
AMT American Tower 2.250 0.009846 Holding Position 2020-04-23
MSFT Microsoft 13.240 0.084144 Holding Position 2020-04-23
SHOP Shopify 318.630 0.810660 Holding Position 2020-04-23
TW Tradeweb -4.920 -0.104792 Holding Position 2020-04-23
ATVI Activision Blizzard 6.370 0.107239 Holding Position 2020-04-21
EA Electronic Arts 16.870 0.156175 Holding Position 2020-04-21
NVDA Nvidia 79.760 0.334943 Holding Position 2020-04-21
RNG RingCentral 55.710 0.331528 Holding Position 2020-04-21
DXCM DexCom 99.820 0.459598 Holding Position 2020-04-20
FSLY Fastly 61.760 2.732743 Holding Position 2020-04-20
MRVL Marvell Technology 6.960 0.262939 Holding Position 2020-04-20
OKTA Okta 57.480 0.494452 Holding Position 2020-04-20
WING Wingstop 24.970 0.288337 Holding Position 2020-04-20
CRWD CrowdStrike 15.680 0.314165 Holding Position 2020-04-17
DG Dollar General -2.240 -0.014424 Holding Position 2020-04-17
EQIX Equinix 14.220 0.024439 Holding Position 2020-04-17
WORK Slack 7.600 0.353488 Holding Position 2020-04-17
AKAM Akamai Technologies -3.510 -0.037504 Holding Position 2020-04-16
AMZN Amazon 508.550 0.282587 Holding Position 2020-04-16
PTON Peloton 23.010 0.719063 Holding Position 2020-04-16
DOCU DocuSign 91.820 1.237300 Holding Position 2020-04-15
TTWO Take-Two Interactive 11.250 0.091501 Holding Position 2020-04-15
VEEV Veeva Systems 38.750 0.277499 Holding Position 2020-04-15
LOGI Logitech 15.580 0.336283 Holding Position 2020-04-14
LVGO Livongo 37.680 1.407546 Holding Position 2020-04-14
MKTX MarketAxess 102.310 0.270304 Holding Position 2020-04-14
ZS Zscaler 45.060 0.937578 Holding Position 2020-04-09
GIS General Mills 1.270 0.023628 Holding Position 2020-04-01
CHWY Chewy 8.740 0.306344 Holding Position 2020-03-27
KR Kroger Co 4.820 0.166322 Holding Position 2020-02-28
REGN Regeneron 130.150 0.347122 Holding Position 2020-02-25
DPZ Domino's 12.230 0.041731 Holding Position 2020-02-24
ZM Zoom Video 184.150 2.700147 Holding Position 2020-01-15
CLX Clorox 67.000 0.439143 Holding Position 2019-12-20
MRNA Moderna 42.190 2.174742 Holding Position 2019-12-20
NET Cloudflare 18.630 1.018033 Holding Position 2019-12-20
In [29]:
if notifyStatus: email_notify("Task 4. Back-test Model completed! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))

Task 5. Evaluate Performance

In [30]:
if notifyStatus: email_notify("Task 5. Evaluate Performance has begun! "+datetime.now().strftime('%a %B %d, %Y %I:%M:%S %p'))
In [31]:
# Calculate the profit/loss from the trading model vs. merely holding a long position
trading_vs_long = stock_status.copy()
trading_vs_long.drop(['current_status', 'last_action_date'], axis=1, inplace=True)

for ticker in stock_list:
    trading_vs_long.loc[ticker, 'long_pandl'] = stock_close_df[ticker][-1] - stock_open_df[ticker][0]
    trading_vs_long.loc[ticker, 'long_return'] = trading_vs_long.loc[ticker, 'long_pandl'] / stock_open_df[ticker][0]
In [32]:
# Rank stocks by the return percentage of the trading model
trading_vs_long.sort_values(by=['trading_return'], ascending=False)
Out[32]:
Name trading_pandl trading_return long_pandl long_return
Symbol
FSLY Fastly 61.760 2.732743 60.95 2.390196
ZM Zoom Video 184.150 2.700147 186.27 2.556547
MRNA Moderna 42.190 2.174742 47.46 3.358811
LVGO Livongo 37.680 1.407546 55.29 2.891736
DOCU DocuSign 91.820 1.237300 112.15 1.678641
TDOC Teladoc 94.600 1.137977 130.77 1.920828
NET Cloudflare 18.630 1.018033 19.67 1.139629
DDOG Datadog Inc 36.270 0.961814 52.63 1.432109
ZS Zscaler 45.060 0.937578 63.34 1.314926
TWLO Twilio Inc 98.020 0.900919 117.42 1.064069
COUP Coupa Software 128.110 0.870667 137.79 0.918600
ETSY Etsy Inc 37.120 0.819426 54.31 0.954482
SHOP Shopify 318.630 0.810660 702.17 2.232868
WIX Wix.Com Ltd 109.010 0.769790 143.04 1.165485
SPOT Spotify 112.020 0.743183 144.81 1.269261
PTON Peloton 23.010 0.719063 36.15 1.500000
CHGG Chegg Inc 26.360 0.677984 36.93 1.185554
EVBG Everbridge 51.060 0.642183 80.16 1.182127
PYPL PayPal 55.500 0.507870 78.03 0.785010
OKTA Okta 57.480 0.494452 93.92 0.802735
DXCM DexCom 99.820 0.459598 246.97 1.611655
CLX Clorox 67.000 0.439143 69.61 0.464190
WORK Slack 7.600 0.353488 6.76 0.278189
REGN Regeneron 130.150 0.347122 319.79 1.105087
SQ Square 22.070 0.341800 53.65 0.861847
LOGI Logitech 15.580 0.336283 24.26 0.601537
NVDA Nvidia 79.760 0.334943 200.58 1.110508
RNG RingCentral 55.710 0.331528 116.41 0.669408
TTD The Trade Desk 83.150 0.314498 239.19 1.259226
CRWD CrowdStrike 15.680 0.314165 40.35 0.644569
CHWY Chewy 8.740 0.306344 21.13 0.834189
WING Wingstop 24.970 0.288337 54.94 0.621845
AMZN Amazon 508.550 0.282587 1153.46 0.668579
VEEV Veeva Systems 38.750 0.277499 93.49 0.628589
AAPL Apple 77.630 0.275059 136.18 0.597464
SPLK Splunk Inc 40.600 0.270396 84.66 0.711728
MKTX MarketAxess 102.310 0.270304 151.95 0.429165
MRVL Marvell Technology 6.960 0.262939 10.99 0.470060
ADBE Adobe 77.080 0.234735 165.75 0.604795
EBAY eBay 6.990 0.194599 15.19 0.402171
KR Kroger Co 4.820 0.166322 9.47 0.392946
EA Electronic Arts 16.870 0.156175 42.56 0.459314
MKC McCormick 26.060 0.154028 14.41 0.087286
CRM Salesforce 22.310 0.135434 45.05 0.306797
NFLX Netflix 42.420 0.126627 219.67 0.825920
DHR Danaher 17.460 0.115583 40.57 0.297086
CMG Chipotle 90.010 0.107411 239.03 0.287998
ATVI Activision Blizzard 6.370 0.107239 25.10 0.474211
EBS Emergent Biosolutions Inc 5.870 0.106727 29.49 0.562572
SPGI S&P Global Inc 28.070 0.103009 86.63 0.349470
GILD Gilead Sciences 6.750 0.102912 13.94 0.224404
TTWO Take-Two Interactive 11.250 0.091501 22.80 0.187948
MSFT Microsoft 13.240 0.084144 66.21 0.478085
NEM Newmont Mining 2.950 0.072057 22.47 0.577783
RMD ResMed 9.800 0.062278 59.30 0.450745
MASI Masimo 9.640 0.060816 85.48 0.592706
GOLD Barrick Gold 0.890 0.050425 8.94 0.500280
DPZ Domino's 12.230 0.041731 127.28 0.512337
TMO Thermo Fisher 12.750 0.038823 83.48 0.302146
BYND Beyond Meat 3.920 0.031428 3.14 0.022671
UNH UnitedHealth Group 8.820 0.029508 79.54 0.364545
SNY Sanofi 1.450 0.028839 6.44 0.143654
EQIX Equinix 14.220 0.024439 154.64 0.269628
GIS General Mills 1.270 0.023628 6.48 0.120111
ZTS Zoetis 1.390 0.010474 11.48 0.091321
AMT American Tower 2.250 0.009846 39.24 0.173513
GOOG Alphabet 6.190 0.004540 239.46 0.199786
DG Dollar General -2.240 -0.014424 30.49 0.190052
CCI Crown Castle -4.370 -0.030894 35.29 0.258346
WMT Walmart -3.910 -0.032186 0.79 0.006644
AKAM Akamai Technologies -3.510 -0.037504 16.92 0.189241
LLY Eli Lilly -5.330 -0.040229 56.31 0.526114
SJM JM Smucker -4.960 -0.046718 -0.76 -0.007171
CL Colgate-Pammolive -3.820 -0.055282 3.07 0.043882
D Dominion Energy -4.910 -0.059667 1.24 0.015284
HRL Hormel -2.850 -0.063277 4.77 0.111736
TGT Target Corporation -8.630 -0.066667 9.39 0.085706
ABBV AbbVie -6.130 -0.067810 25.93 0.354138
VMW VMware -11.660 -0.074178 1.74 0.011496
AMD Advanced Micro Devices -3.470 -0.079880 24.07 0.844265
VZ Verizon -4.950 -0.080540 -4.59 -0.077455
HD Home Depot -20.350 -0.087044 18.81 0.082018
PLD Prologis -7.900 -0.090059 9.94 0.116653
COST Costco -29.795 -0.094882 6.12 0.020494
CTXS Citrix Systems -11.200 -0.099777 53.09 0.551355
TW Tradeweb -4.920 -0.104792 19.48 0.490063
PFE Pfizer -4.460 -0.113342 -1.93 -0.054107
COR CoreSite Realty -13.830 -0.117452 7.91 0.067342
BSX Boston Scientific Corporation -5.670 -0.125276 -3.01 -0.078611
JNJ Johnson & Johnson -19.330 -0.131604 11.43 0.088639
PANW Palo Alto Networks Inc -30.330 -0.131944 20.86 0.100048
CAG Conagra -4.580 -0.136026 7.76 0.278037
PG Procter & Gamble -17.580 -0.139358 -1.32 -0.010879
MDLZ Mondelez -9.100 -0.165124 -3.75 -0.068393
PEP PepsiCo -23.800 -0.173204 -4.75 -0.034644
PRGO Perrigo -9.380 -0.174512 2.76 0.053006
CPB Campbell Soup -9.840 -0.203264 2.72 0.058382
ABT Abbott Labs -18.630 -0.209349 12.57 0.158933
CNC Centene -13.430 -0.219301 21.78 0.498626
BNTX BioNTech -30.510 -0.959132 47.64 2.887273
In [33]:
# Rank stocks by the return percentage of the long-only approach
trading_vs_long.sort_values(by=['long_return'], ascending=False)
Out[33]:
Name trading_pandl trading_return long_pandl long_return
Symbol
MRNA Moderna 42.190 2.174742 47.46 3.358811
LVGO Livongo 37.680 1.407546 55.29 2.891736
BNTX BioNTech -30.510 -0.959132 47.64 2.887273
ZM Zoom Video 184.150 2.700147 186.27 2.556547
FSLY Fastly 61.760 2.732743 60.95 2.390196
SHOP Shopify 318.630 0.810660 702.17 2.232868
TDOC Teladoc 94.600 1.137977 130.77 1.920828
DOCU DocuSign 91.820 1.237300 112.15 1.678641
DXCM DexCom 99.820 0.459598 246.97 1.611655
PTON Peloton 23.010 0.719063 36.15 1.500000
DDOG Datadog Inc 36.270 0.961814 52.63 1.432109
ZS Zscaler 45.060 0.937578 63.34 1.314926
SPOT Spotify 112.020 0.743183 144.81 1.269261
TTD The Trade Desk 83.150 0.314498 239.19 1.259226
CHGG Chegg Inc 26.360 0.677984 36.93 1.185554
EVBG Everbridge 51.060 0.642183 80.16 1.182127
WIX Wix.Com Ltd 109.010 0.769790 143.04 1.165485
NET Cloudflare 18.630 1.018033 19.67 1.139629
NVDA Nvidia 79.760 0.334943 200.58 1.110508
REGN Regeneron 130.150 0.347122 319.79 1.105087
TWLO Twilio Inc 98.020 0.900919 117.42 1.064069
ETSY Etsy Inc 37.120 0.819426 54.31 0.954482
COUP Coupa Software 128.110 0.870667 137.79 0.918600
SQ Square 22.070 0.341800 53.65 0.861847
AMD Advanced Micro Devices -3.470 -0.079880 24.07 0.844265
CHWY Chewy 8.740 0.306344 21.13 0.834189
NFLX Netflix 42.420 0.126627 219.67 0.825920
OKTA Okta 57.480 0.494452 93.92 0.802735
PYPL PayPal 55.500 0.507870 78.03 0.785010
SPLK Splunk Inc 40.600 0.270396 84.66 0.711728
RNG RingCentral 55.710 0.331528 116.41 0.669408
AMZN Amazon 508.550 0.282587 1153.46 0.668579
CRWD CrowdStrike 15.680 0.314165 40.35 0.644569
VEEV Veeva Systems 38.750 0.277499 93.49 0.628589
WING Wingstop 24.970 0.288337 54.94 0.621845
ADBE Adobe 77.080 0.234735 165.75 0.604795
LOGI Logitech 15.580 0.336283 24.26 0.601537
AAPL Apple 77.630 0.275059 136.18 0.597464
MASI Masimo 9.640 0.060816 85.48 0.592706
NEM Newmont Mining 2.950 0.072057 22.47 0.577783
EBS Emergent Biosolutions Inc 5.870 0.106727 29.49 0.562572
CTXS Citrix Systems -11.200 -0.099777 53.09 0.551355
LLY Eli Lilly -5.330 -0.040229 56.31 0.526114
DPZ Domino's 12.230 0.041731 127.28 0.512337
GOLD Barrick Gold 0.890 0.050425 8.94 0.500280
CNC Centene -13.430 -0.219301 21.78 0.498626
TW Tradeweb -4.920 -0.104792 19.48 0.490063
MSFT Microsoft 13.240 0.084144 66.21 0.478085
ATVI Activision Blizzard 6.370 0.107239 25.10 0.474211
MRVL Marvell Technology 6.960 0.262939 10.99 0.470060
CLX Clorox 67.000 0.439143 69.61 0.464190
EA Electronic Arts 16.870 0.156175 42.56 0.459314
RMD ResMed 9.800 0.062278 59.30 0.450745
MKTX MarketAxess 102.310 0.270304 151.95 0.429165
EBAY eBay 6.990 0.194599 15.19 0.402171
KR Kroger Co 4.820 0.166322 9.47 0.392946
UNH UnitedHealth Group 8.820 0.029508 79.54 0.364545
ABBV AbbVie -6.130 -0.067810 25.93 0.354138
SPGI S&P Global Inc 28.070 0.103009 86.63 0.349470
CRM Salesforce 22.310 0.135434 45.05 0.306797
TMO Thermo Fisher 12.750 0.038823 83.48 0.302146
DHR Danaher 17.460 0.115583 40.57 0.297086
CMG Chipotle 90.010 0.107411 239.03 0.287998
WORK Slack 7.600 0.353488 6.76 0.278189
CAG Conagra -4.580 -0.136026 7.76 0.278037
EQIX Equinix 14.220 0.024439 154.64 0.269628
CCI Crown Castle -4.370 -0.030894 35.29 0.258346
GILD Gilead Sciences 6.750 0.102912 13.94 0.224404
GOOG Alphabet 6.190 0.004540 239.46 0.199786
DG Dollar General -2.240 -0.014424 30.49 0.190052
AKAM Akamai Technologies -3.510 -0.037504 16.92 0.189241
TTWO Take-Two Interactive 11.250 0.091501 22.80 0.187948
AMT American Tower 2.250 0.009846 39.24 0.173513
ABT Abbott Labs -18.630 -0.209349 12.57 0.158933
SNY Sanofi 1.450 0.028839 6.44 0.143654
GIS General Mills 1.270 0.023628 6.48 0.120111
PLD Prologis -7.900 -0.090059 9.94 0.116653
HRL Hormel -2.850 -0.063277 4.77 0.111736
PANW Palo Alto Networks Inc -30.330 -0.131944 20.86 0.100048
ZTS Zoetis 1.390 0.010474 11.48 0.091321
JNJ Johnson & Johnson -19.330 -0.131604 11.43 0.088639
MKC McCormick 26.060 0.154028 14.41 0.087286
TGT Target Corporation -8.630 -0.066667 9.39 0.085706
HD Home Depot -20.350 -0.087044 18.81 0.082018
COR CoreSite Realty -13.830 -0.117452 7.91 0.067342
CPB Campbell Soup -9.840 -0.203264 2.72 0.058382
PRGO Perrigo -9.380 -0.174512 2.76 0.053006
CL Colgate-Pammolive -3.820 -0.055282 3.07 0.043882
BYND Beyond Meat 3.920 0.031428 3.14 0.022671
COST Costco -29.795 -0.094882 6.12 0.020494
D Dominion Energy -4.910 -0.059667 1.24 0.015284
VMW VMware -11.660 -0.074178 1.74 0.011496
WMT Walmart -3.910 -0.032186 0.79 0.006644
SJM JM Smucker -4.960 -0.046718 -0.76 -0.007171
PG Procter & Gamble -17.580 -0.139358 -1.32 -0.010879
PEP PepsiCo -23.800 -0.173204 -4.75 -0.034644
PFE Pfizer -4.460 -0.113342 -1.93 -0.054107
MDLZ Mondelez -9.100 -0.165124 -3.75 -0.068393
VZ Verizon -4.950 -0.080540 -4.59 -0.077455
BSX Boston Scientific Corporation -5.670 -0.125276 -3.01 -0.078611
In [34]:
print ('Total time for the script:',(datetime.now() - startTimeScript))
Total time for the script: 0:07:58.528901